2012-02-09 86 views
0

我想在<input type="text"/>中使用文字描邊,我需要它是跨瀏覽器(firefox,google chrome,safari,opera,IE7 +)。在<input type =「text」/>中輸入文字描邊

是否有任何方法可以做到這一點(CSS 2.1,jQuery ...)?

+0

對於「文字描邊」,你是指對輸入文本的穿透? – 2012-02-09 14:58:19

+0

我想大家都在誤讀意圖。相信OP是指css屬性'-webkit-text-stroke'。如我錯了請糾正我。 – 2012-02-09 14:59:16

+0

如果您有想要的信息,請不要忘記標記答案 – 2012-02-09 15:02:01

回答

3

我相信他在談論css屬性text-stroke(-webkit-text-stroke),這隻適用於webkit瀏覽器,所以在Internet Explorer中不能正確實現,但是你可以用text-shadow來僞造它,其中can work in ie7+如果你必須有它即見http://css-tricks.com/adding-stroke-to-web-text/

它看起來是這樣的:。

.stroke_text { 
    color: white; 
    text-shadow: 
      -1px -1px 0 #000, 
      1px -1px 0 #000, 
      -1px 1px 0 #000, 
      1px 1px 0 #000; 
} 

或內聯:

<input type='text' 
     style="color: white; text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000; width:200px; font-size:20px;" /> 

這種方法的唯一缺點是,影子只能是1px的還是它開始看起來很有趣,所以它不是text-stroke完美複製。也就是說,你可能想看看有條件的CSS,其中支持它的瀏覽器使用文本筆畫,而其他人使用這種簡單的方法。

0

我不太明白你的意思,但我認爲這是你想要的 -

<input type="text" onkeyup="function_you_want_tocall()" /> 
0

由於模糊的問題,你有很多選擇:

$('#myInput').change(function() { ... }); // this will fire onblur if the text has changed 
$('#myInput').keydown(function() { ... }); // this will fire when a key is pressed down 
$('#myInput').keyup(function() { ... }); // this will fire when a key is released 
$('#myInput').keypress(function() { ... }); // this will fire when a printable key is pressed 
0

使用jQuery你可以這樣做:

$(document).ready(function() { 
    $("input[type='text']").keypress(function() { 
     // Your logc goes here 
    }); 
}); 

這將綁定一個按鍵事件到每個輸入類型=文本。如果你想要一個特定的ID,可以用$(「#your_id」)替換$(「input [type ='text']」。另外,還可以使用keydown和keyup事件來找出最適合你的東西。

相關問題