webkit 浏览器中输入元素的垂直填充无效

发布于 2024-10-11 12:12:37 字数 518 浏览 2 评论 0原文

我无法为输入元素中的文本/占位符设置垂直/顶部填充。

以下代码可以在 IE/Firefox/Opera 中运行,但不能在 Safari/Chrome 中运行:

CSS:

input
{
 border: 1px solid black;
 height: 100px;
 padding: 70px 25px 10px 25px;
 width: 300px;
}

HTML:

<input type="text" placeholder="Enter text here"/>

webkit 开发人员工具按应有的方式显示指标,但文本仍然位于输入的中间。

类似的东西可能在这里(虽然没有答案)。

I am unable to set a vertical/top padding for the text/placeholder in input elements.

The following code will work in IE/Firefox/Opera, but not in Safari/Chrome:

CSS:

input
{
 border: 1px solid black;
 height: 100px;
 padding: 70px 25px 10px 25px;
 width: 300px;
}

HTML:

<input type="text" placeholder="Enter text here"/>

The webkit Developer Tools display the metrics as they should be, but the text is still in the middle of the input.

Something similar might be here (unanswered though).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

混浊又暗下来 2024-10-18 12:12:37

刚刚测试了 Chrome 的奇怪行为。您可以将输入粘贴在 div 中并在其上使用填充吗?

Just tested that and its bizzare how Chrome behaves. Could you maybe stick the input in a div and use padding on that?

送舟行 2024-10-18 12:12:37

输入是内联元素。内联元素不接受垂直填充。

添加: display:block 到您的 CSS,然后您必须添加 float:left 并随后清除浮动。

inputs are inline elements. Inline elements don't accept vertical padding.

add: display:block to your CSS, you will then have to add float:left and clear your floats afterwards.

蓝戈者 2024-10-18 12:12:37

我相信 Webkit 中没有办法设置垂直填充。

使用 height 属性添加垂直内边距。您可能需要使用 line-heightpadding-top/padding-bottom 使文本在浏览器中垂直居中。

I believe there is no way to set vertical padding in Webkit.

Use the height property, to add vertical padding. You may need to use line-height or padding-top/padding-bottom to vertically center the text across browsers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文