2011-05-06 72 views
7

是否有可能使IE7和IE8尊重輸入字段上的text-indent css屬性?在IE7和IE8中的CSS問題 - 在<input type =「text」>字段上的文本縮進字段

這裏是我的代碼

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

當你第一次加載IE8的網頁,文本沒有縮進。您可以通過關注文本字段並鍵入它來「激活」文本縮進屬性(即觸發onchange事件)。

如何使IE7和IE8尊重頁面加載時輸入文本元素的文本縮進而不是input.onchange事件?

+0

爲什麼你需要這個?也許還有另一種方式。 – 2011-05-06 18:16:28

+0

通常我會使用填充左邊緣或左邊緣...但由於我正在做的其他事情,我將不得不依靠文本縮進 – John 2011-05-06 18:28:58

+1

使用它之外的意圖不建議。正如下面的@gelogenic所說,'text-indent'是用於縮進第一行。一個'inline'元素(如'input')如果它不是段落中的第一項,則不一定會尊重這一點。 – 2011-05-06 18:32:54

回答

0

您確定要'文本縮進'而不是'margin-left'或'padding-left'屬性嗎? 'text-indent'屬性意味着僅影響元素中的第一行文本。你可能有更好的保證金或填充運氣。

在正常情況下,輸入標籤文本縮進
+0

通常我會使用填充左邊緣或左邊緣...但由於我正在做的其他事情,我將不得不依靠文本縮進 – John 2011-05-06 18:29:16

13

不會在IE6和IE7 工作,如果再加上線高:1像素,將工作的所有瀏覽器

TEXT-INDENT將工作的所有瀏覽器

<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" /> 

演示

http://jsfiddle.net/KczMR/1/

+1

看起來任何行高都可以工作,所以最好寫出line-height:1em; – MatTheCat 2012-07-21 14:14:32

+0

感謝獲得輸入文本被隱藏在IE中很難 – Crushinator 2014-01-31 00:02:45

相關問題