網頁制作poluoluo文章簡介:我們有沒有更好的辦法來實現輸入框input樣式懸停交互的效果呢?我們有沒有更好的辦法來實現輸入框input樣式懸停交互的效果呢?
制作表單的時候,實現鼠標懸停交互效果有多種方法:
1、在xhtml中直接寫入onmouseover、onmouseout腳本就可以實現了,但這樣就違背了web標准所倡導的內容、表現相分離的原則。以後若要對此進行修改也將會很繁瑣。這樣直接寫入xhtml也會讓頁面代碼增加,如果只是一個input輸入框或許是無所謂的,如果是幾十個幾百個,增加的字節數就很寵大了。
2、在xhtml中加入小腳本,鼠標經過時可以切換CSS。具體內容請看這篇文章。雖然實現了內容、表現相分離,以後的修改也會很方便。但同樣會讓頁面代碼增加。
我們有沒有更好的辦法來實現輸入框input樣式懸停交互的效果呢?
我們今天就討論這樣的方法,直接在CSS文件中寫入懸停交互效果的小腳本。不但實現了內容與表現分離,而且使xhtml代碼減小,促進了代碼重用、更加的優化。
這一方法的原理,主要是應用CSS的expression,關於expression的更多介紹,請看這篇文章。
input {star : expression(
onmouseover=function(){this.style.borderColor="#060"},
onmouseout=function(){this.style.borderColor="#c00"})}
上面的代碼,聲明了,當鼠標移上去的時候,邊框的顏色是#060,當鼠標移除的時候邊框的顏色是#c00。我們看一下運行效果:
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
你也可以這樣做
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]