我正在构建注册表,但在对齐 input[type="text"] placeholder
时遇到问题和我的 <select>
的“伪”占位符元素。我希望 input[type="text"] 占位符与 <select>
的“伪”占位符左对齐。 .
我对 select HTML 元素使用了“伪”占位符这个词,因为 select HTML 元素没有占位符,而显示的是 select 中的第一个选项而不是占位符。
您可以在屏幕截图中看到一个 select HTML 元素,其第一个 <option>
“国家”的文本。还有另一个选择元素,第一个选项文本是“HOW SOON DO YOU WANT YOUR BOOK?”。
与 input[type="text"] 占位符文本相比,这两个选择元素都有缩进,我无法与 input[type="text"] 占位符文本完全左对齐。
input[type="text"].couture-input-underline,
input[type="password"].couture-input-underline,
input[type="number"].couture-input-underline,
select.couture-input-underline
{
width: 300px;
display: block;
font-size: 22px;
border: 0px solid #7f7f7f;
border-bottom-width: 1px;
background: transparent;
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
-webkit-border-radius: 0;
-moz-border-radius: 0;
-o-border-radius: 0;
-ms-border-radius: 0;
border-radius: 0;
padding: 0;
margin:0;
margin-bottom: 10px;
}
.text-match-placeholder{
color: #ACACAC;
}
select option
{
outline: none;
-webkit-appearance: none;
padding: 0;
margin: 0;
}
<select class="couture-input-underline text-match-placeholder">
<option value>Choose</option>
<option>First</option>
<option>Second</option>
</select>
<input type="text" class="couture-input-underline" placeholder="Text Box One" />
最佳答案
我试图重新创建它,但我只在 Firefox 上发现了“错误”。 如果是这种情况,那么这里发生的是声明
select > option {
-moz-padding-start: 3px;
}
可以在用户代理样式中找到。 See here how to inspect that
尽管如此,如果您为 select > option
覆盖它,在您的 CSS 中,它不起作用。
/** IF you add the following
in your CSS, it won't solve
the problem
**/
select > option {
-moz-padding-start: 0 !important;
}
我的猜测 实际显示填充的元素是一个“幽灵”元素,它是<option>
的副本。元素,因此它不是您的 css 的目标。
这是一个非常丑陋的修复
input[type="text"].couture-input-underline,
input[type="password"].couture-input-underline,
input[type="number"].couture-input-underline,
select.couture-input-underline
{
padding-left: 3px;
}
select.couture-input-underline {
-moz-padding-start: 0px;
}
这基本上会添加 3px
留给每个输入,在 FF 上这将使选项缩进 6px
,因此我们将其重置为 select
仅元素。
关于jquery - 从 HTML 选择元素选项中删除左缩进或未知填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34113018/