html - 将同一行“First Name”和“Last Name”上的两个输入列与其错误消息和标签对齐
问题描述
我已经尝试了五天来对齐两个输入字段,它们的标签和错误消息在同一行(名字和姓氏)但是在搜索堆栈并尝试其他用例之后,它们没有工作。我想我会发布我目前拥有的代码,看看是否有人能够就需要修复的内容提出建议,以允许我的输入字段对齐。我试过 CSS 网格但没有成功。代码在“全名”div 中,但我包含了可能影响我的设置的周围代码。
#fullname {
display: flex;
flex-direction: row;
display: grid;
grid-gap: 5px;
grid-template-columns: 100%;
grid-template-rows: 25% 25% 25% 25%;
grid-template-areas: 'firstLabel' 'firstError' 'lastLabel' 'lastError' 'fname' 'fname' 'lname' 'lname'
}
#firstLabel {
display: grid;
grid-area: firstlabel;
}
#firstError {
display: grid;
grid-area: firstError;
}
#lastLabel {
display: grid;
grid-area: lastLabel;
}
#lastError {
display: grid;
grid-area: lastError;
}
#fname {
display: grid;
grid-area: fname;
max-width: 100px;
}
#lname {
display: grid;
grid-area: lname;
max-width: 100px;
}
/*Register Button div*/
#register_button {
text-align: center;
margin-top: 20px;
margin-left: auto;
margin-right: auto;
border-radius: 5px;
padding: 15px;
width: 50%;
}
/*Register Form div*/
#register_form {
text-align: center;
margin-left: auto;
margin-right: auto;
margin-top: 20px;
border-radius: 5px;
padding: 15px;
width: 50%;
}
#register {
font-family: Rajdhani, sans-serif;
font-size: 14px;
font-weight: bolder;
width: 50%;
background-color: #000;
color: white;
padding: 15px 20px;
margin: 10px 0;
border: none;
border-radius: 4px;
cursor: pointer;
}
input[type=text],
input[type=date],
select {
font-family: Rajdhani, sans-serif;
font-size: 16px;
width: 50%;
padding: 5px 20px;
margin: 10px 25%;
display: block;
border: 1px solid #ccc;
border-radius: 15px;
box-sizing: border-box;
}
<div id="register_form" class="Hidden">
<form id="reg_input" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="POST">
<!-- Required Fields -->
<span class="Error">* All fields are required</span>
<br><br>
<div id="fullname">
<!-- First Name -->
<label id="firstLabel" for="fname">First Name</label>
<span id="firstError" class="Error">* <?php echo $fnameErr;?></span>
<br>
<label id="lastLabel" for="lname">Last Name</label>
<span id="lastError" class="Error">* <?php echo $lnameErr;?></span>
<br>
<input type="text" id="fname" name="firstname" placeholder="e.g. Reggie" />
<input type="text" id="lname" name="lastname" placeholder="e.g. Rocket" />
</div>
<!-- Email -->
<label for="email">Email</label>
<span class="Error">* <?php echo $emailErr;?></span>
<br>
<input type="text" id="email" name="Email" placeholder="regge.rocket@llf.com " />
<!-- Date of Birth -->
<label for="dateOfBirth">Date of Birth</label>
<span class="Error">* <?php echo $dateOfBirthErr;?></span>
<br>
<input type="date" id="dateOfBirth" name="dateOfBirth" value="<?php echo date('Y-m-d'); ?>" />
<!-- Nation of Origin -->
<label for="nationOfOrigin">Nation of Origin</label>
<span class="Error">* <?php echo $nationOfOriginErr;?></span>
<br>
<select id="nationOfOrigin" name="nationOfOrigin">
<option value="">--Select--</option>
<option value="AF">Afghanistan</option>
</select>
<!-- Submit Button -->
<input type="submit" value="Submit" id="submitButton" name="submitButton">
</form>
</div>
我很感激我能得到的任何帮助!
解决方案
对您的代码进行了一些调整,这就是我想出的
#fullname {
display: grid;
grid-template-columns: auto auto;
}
#fullname > div {
padding: 0 2px;
}
/*Register Button div*/
#register_button {
text-align: center;
margin-top: 20px;
margin-left: auto;
margin-right: auto;
border-radius: 5px;
padding: 15px;
width: 50%;
}
/*Register Form div*/
#register_form {
text-align: center;
margin-left: auto;
margin-right: auto;
margin-top: 20px;
border-radius: 5px;
padding: 15px;
width: 50%;
}
#register {
font-family: Rajdhani, sans-serif;
font-size: 14px;
font-weight: bolder;
width: 50%;
background-color: #000;
color: white;
padding: 15px 20px;
margin: 10px 0;
border: none;
border-radius: 4px;
cursor: pointer;
}
input[type="text"],
input[type="date"],
select {
font-family: Rajdhani, sans-serif;
font-size: 16px;
width: 100%;
padding: 5px 20px;
margin: 10px;
display: block;
border: 1px solid #ccc;
border-radius: 15px;
box-sizing: border-box;
}
<div id="register_form" class="Hidden">
<form id="reg_input" action="<?php echo
htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="POST">
<!-- Required Fields -->
<span class="Error">* All fields are required</span>
<br><br>
<div id="fullname">
<!-- First Name -->
<div>
<label id="firstLabel1" for="fname">First Name</label>
<span id="firstError1" class="Error">* <?php echo $fnameErr;?></span>
<input type="text" id="fname" name="firstname" placeholder="e.g. Reggie" />
</div>
<!-- Last Name -->
<div>
<label id="lastLabel1" for="lname">Last Name</label>
<span id="lastError1" class="Error">* <?php echo $lnameErr;?></span>
<input type="text" id="lname" name="lastname" placeholder="e.g. Rocket" />
</div>
</div>
<!-- Email -->
<label for="email">Email</label>
<span class="Error">* <?php echo $emailErr;?></span>
<br>
<input type="text" id="email" name="Email" placeholder="regge.rocket@llf.com " />
<!-- Date of Birth -->
<label for="dateOfBirth">Date of Birth</label>
<span class="Error">* <?php echo $dateOfBirthErr;?></span>
<br>
<input type="date" id="dateOfBirth" name="dateOfBirth" value="<?php echo date('Y-m-d'); ?>" />
<!-- Nation of Origin -->
<label for="nationOfOrigin">Nation of Origin</label>
<span class="Error">* <?php echo $nationOfOriginErr;?></span>
<br>
<select id="nationOfOrigin" name="nationOfOrigin">
<option value="">--Select--</option>
<option value="AF">Afghanistan</option>
</select>
<!-- Submit Button -->
<input type="submit" value="Submit" id="submitButton" name="submitButton">
此链接到 CodePen。解决方案
推荐阅读
- hibernate - Hibernate:超类映射到子类中的@UniqueConstraint
- node.js - 为什么我的函数在命令行中运行两次但在 vscode 中没有
- java - 学校 Java 密室逃脱计划
- python - 高维高斯平均
- model-view-controller - 使用 dropzone 使用 mvc webapi 上传图像
- c# - Spreadsheets.Get() 请求总是返回 500
- angular - 错误:NodeInjector:NOT_FOUND [NgControl]
- dataset - Tensorflow:将 PrefetchDataset 转换为 BatchDataset
- hyper-v - 无法通过 Hyper-V 虚拟交换机为我的 Windows 10 VM 建立 Internet 连接
- python - Python:安排 Airflow dag 每天随机运行两次(n 次)?