IE7和IE8中的CSS问题-上的文本缩进<;输入类型=";“文本”&燃气轮机;领域

IE7和IE8中的CSS问题-上的文本缩进<;输入类型=";“文本”&燃气轮机;领域,css,internet-explorer-8,Css,Internet Explorer 8,是否可以使IE7和IE8尊重输入字段上的文本缩进css属性 这是我的密码 <!DOCTYPE html> <html> <body> <input type="text" style="text-indent:100px; display:block;" value="Test indent" /> </body> </html> 在IE8中首次加载页面时,文本不会缩进。通过聚焦文本字段并在其中键入(即

是否可以使IE7和IE8尊重输入字段上的文本缩进css属性

这是我的密码

<!DOCTYPE html>
<html>
<body>
        <input type="text" style="text-indent:100px; display:block;" value="Test indent" />
</body>
</html>

在IE8中首次加载页面时,文本不会缩进。通过聚焦文本字段并在其中键入(即触发onchange事件),可以“激活”文本缩进属性


如何使IE7和IE8在页面加载而不是在input.onchange事件中尊重输入文本元素的文本缩进?

您确定要使用“文本缩进”而不是“左边距”或“左边填充”属性吗?“文本缩进”属性仅影响元素中的第一行文本。使用边距或填充可能会更好。

在正常情况下,输入标记文本缩进在ie6和ie7中不起作用 如果我们添加线宽:1px,它将适用于所有浏览器

文本缩进将适用于所有浏览器

<input type="text" style="text-indent:-100px; display:block; line-height:1px;" value="Test indent" />

文本缩进不适用于ie7和ie6浏览器

<input type="text" style="text-indent:-100px; display:block;" value="Test indent" />

演示


您为什么需要这个?也许还有另一种方法。通常我会使用左边空白或左边空白…但由于我正在做的其他事情,我将不得不依赖文本缩进,使用它的意图之外的东西是不建议的。正如@Gelegenic在下面所说,
文本缩进
用于缩进第一行。如果
内联
元素(例如
输入
)不是段落中的第一项,则它不一定会遵守这一点。此输入字段仅具有一行。如果我想要多行,我会使用
textarea
在这种情况下,
input
字段与
span
字段没有区别<代码>这是一个

很可能是一行文字<代码>“测试”不是它自己的行,除非
输入
显示:块
A
textarea
元素是一个
block-level
元素(类似于
p
标记)。通常我会使用左边填充或左边距…但由于我正在做的其他事情,我将不得不依赖文本缩进。似乎任何行高都可以工作,所以最好写行高:1em;感谢在IE中隐藏输入文本是很困难的