原生js更改css樣式的兩種方式
下面我給大家介紹的是原生js更改CSS樣式的兩種方式:
1. 通過在javascript代碼中的node.style.cssText="css表達式1;css表達式2;css表達式3 "的方式直接更改CSS樣式。
2. 先在CSS樣式表中對特定的類如“active類”設置樣式(這里的active類是假定的,暫時不存在),然后再在javascript代碼中通過node.classname="active"使得CSS樣式表中對active類的樣式設置附加到該node節(jié)點上來。
下面是詳細介紹,首先是html的代碼:
<style type="text/css"> div { float: left; padding: 20px; margin: 10px; border: 1px solid #000; background-color: #fff; color: #000; } .active { background-color:blue } </style> <body> <div class="root"> </div> </body>
只是一個簡單的div,運行結果為
首先使用上面所說的第一種方式更改css樣式,寫入如下的javascript代碼:
<script type="text/javascript"> var root=document.getElementsByClassName("root")[0]; root.style.cssText="background-color: blue;color: #fff;"; </script>
運行結果為:
然后使用上面所說的第二種方式更改css樣式,寫入如下的javascript代碼:
<script type="text/javascript"> var root=document.getElementsByClassName("root")[0]; root.className="active"; </script>
同樣運行結果為:
總結:這兩種方式結果相同,但就操作過程而言,第二種方式也就是“node.classname”的方式使得css和js的寫入分隔開來,顯然更加合理有序一些。如果css語句比較簡單的話,這兩種方式沒有差別,但若css語句比較復雜的話,顯然第二種方式比較有條不紊。
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!