html - 为什么如果你在 CSS 中定位一个“表单”元素,属性只适用于第一个子元素,而不是全部?
问题描述
这就是我的意思。
<div class="drop-down">
<form action="/action-page.php">
<label for="cars">Choose a Japanese car:</label>
<select id="cars" name="cars">
<option value="Toyota">Toyota</option>
<option value="Honda">Honda</option>
<option value="Mitsubishi">Mitsubishi</option>
<option value="Suzuki">Suzuki</option>
<option value="Nissan">Nissan</option>
<option value="Subaru">Subaru</option>
<option value="Mazda">Mazda</option>
</select>
<input type="submit">
</form>
</div>
和 CSS:
.drop-down {
background-color:white;
padding:20px;
display:inline-block;
padding-right:70px;
padding-left:70px;
font-size:20px;
}
现在,字体大小仅适用于第一个子元素,即label
元素。为什么它不适用于其余的子元素,即select
and input
?
我必须分别针对它们来更改它们的字体大小。我认为,如果我以父元素为目标,更改将级联到父元素中的所有文本,但它只会级联到第一个子元素。
这是为什么?
解决方案
您可以通过为select
.
select {
font-size:20px;
}
如果您希望两者都使用相同的样式,则可以将其添加到类似样式.drop-down, select {}
中,但由于标签样式中有填充,这会使情况变得更糟。它将应用于选项,这将使您的下拉列表更大。
.drop-down {
background-color:white;
padding:20px;
display:inline-block;
padding-right:70px;
padding-left:70px;
font-size:20px;
}
select {
font-size:20px;
}
<div class="drop-down">
<form action="/action-page.php">
<label for="cars">Choose a Japanese car:</label>
<select id="cars" name="cars">
<option value="Toyota">Toyota</option>
<option value="Honda">Honda</option>
<option value="Mitsubishi">Mitsubishi</option>
<option value="Suzuki">Suzuki</option>
<option value="Nissan">Nissan</option>
<option value="Subaru">Subaru</option>
<option value="Mazda">Mazda</option>
</select>
<input type="submit">
</form>
</div>
推荐阅读
- jquery - 如果大于 1,则以数组格式显示数据层
- python-3.6 - 如何将列表添加到字典中作为python中的键值
- javascript - 数据表标题不响应模式
- .net - COPY_FILE_NO_BUFFERING 标志的“大”文件是什么?
- javascript - 大数据集问题的强制布局气泡图
- mysql - 如何将 Web 服务连接和配置到 Soap UI、Mysql Workbench、Web 服务服务器 All Together
- ios - 如何在 swift5 和 Alamofire 5 beta 版本中获取和保存响应?
- javascript - 是否可以使用顶点代码打开 Outlook 邮件并将 HTML 文本从 Salesforce 对象字段导入邮件正文?
- xamarin - 更改列表视图单元格的背景颜色在运行时不起作用
- android - 如何使用 itemTouchHelper RecyclerView 为滑动菜单绘制三个按钮?