NARUTOLUOLUO 2016-07-11
不能使用外部CSS样式实现hover鼠标悬停改变样式
在DIV+CSS网页布局中,有时我们不能直接使用外部CSS样式控制DIV样式,比如对a设置a:hover样式。
可以使用onMouseOver(鼠标移到目标上)和onMouseOut(鼠标移开目标后)实现对a标签或其它html标签设置hover样式。
直接对标签使用即可,无论A标签、SPAN标签、DIV标签等均可。
<a href="http://www.jb51.net/" style="color:#00F; text-decoration:none" onMouseOver="this.style.color='#F00';this.style.textDecoration='underline'" onMouseOut="this.style.color='#00F';this.style.textDecoration='none'">jb51</a> 以上对a超链接代码设置默认样式、鼠标移到目标上、鼠标移开目标后样式。特点代码比较长。
jb51.net重要提示说明:为了看到鼠标移开后与默认样式相同,通常需要直接对标签使用style设置默认CSS样式并且与onMouseOut设置CSS样式保持相同。以免初始状态对象样式与鼠标移开对象后样式的不同。
如上代码:
style="color:#00F; text-decoration:none" 与
onMouseOut="this.style.color='#00F';this.style.textDecoration='none'" 设置默认字体颜色#00F与不显示下划线。
通过常规hover与不用外部hover实现hover样式设置方法案例如下
1、完整常规外部CSS案例展示代码:
XML/HTML Code复制内容到剪贴板
1.<!DOCTYPE html>
2.<html>
3.<head>
4.<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5.<title>jb51.net实例</title>
6.<style>
7..abc a{ color:#00F; text-decoration:none}
8./* 默认abc盒子里超链接文字字体颜色为蓝色 没有下划线 */
9.
10..abc a:hover{ color:#F00; text-decoration:underline}
11./* 鼠标悬停abc盒子里超链接文字上后字体颜色为红色 出现下划线 */
12.
13..bb{ color:#00F}
14..bb:hover{ color:#F00; font-weight:bold}
15./* 直接对bb对象盒子设置hover */
16.</style>
17.</head>
18.<body>
19.<div class="abc">
20.欢迎访问<a href="http://www.jb51.net/">jb51.net</a>网站!
21.</div>
22.
23.<div class="bb">
24.默认我是蓝色,鼠标悬停时变红色并加粗。
25.</div>
26.</body>
27.</html> 2、HTML代码与浏览器效果截图说明图
默认与鼠标悬停浏览器测试效果截图
3、外部CSS样式转换后HTML源代码
XML/HTML Code复制内容到剪贴板
1.<!DOCTYPE html>
2.<html>
3.<head>
4.<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5.<title>jb51.net实例</title>
6.</head>
7.<body>
8.<div class="abc">
9.欢迎访问
10.<a href="http://www.jb.com/"
11.style="color:#00F; text-decoration:none"
12.onMouseOver="this.style.color='#F00';this.style.textDecoration='underline'"
13.onMouseOut="this.style.color='#00F';this.style.textDecoration='none'">jb51.net</a>网站!
14.</div>
15.
16.<div style="color:#00F; font-weight:normal"
17.onMouseOver="this.style.color='#F00';this.style.fontWeight='bold'"
18.onMouseOut="this.style.color='#00F';this.style.fontWeight='normal'">
19.默认我是蓝色,鼠标悬停时变红色并加粗。
20.</div>
21.</body>
22.</html>
4、使用onMouseOver和onMouseOut实现外部CSS hover样式截图
使用onMouseOver和onMouseOut实现外部CSS hover样式浏览器测试效果与说明截图
5、特别说明:无论是a标签还是div标签、span标签、h1标签、p标签等都可以直接在标签内使用onMouseOver和onMouseOut实现鼠标悬停移到对象上与移开后样式变化。需要注意是,一般为了初始默认状态与鼠标移开后样式保存一致,需要对标签内加style属性设置CSS与onMouseOut(鼠标移开)设置样式CSS保存一致
LESS 将 CSS 赋予了动态语言的特性,如 变量, 继承, 运算, 函数. LESS 既可以在 客户端 上运行 (支持IE 6+, Webkit, Firefox),也可以借助Node.js或者Rhino在服务端运行。