重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、新建一个HTML文件,文件名为test.html,title标题为"CSS实现鼠标经过导航的超链接时显示下划线效果"。
成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、网站制作、永福网络推广、重庆小程序开发公司、永福网络营销、永福企业策划、永福品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供永福建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com
2、在页面编写nav标签,在里面放三个超链接(首页、栏目一、栏目二),代码如下:
3、运行代码,效果如下:
4、使用css对导航的字体的字体大小、颜色、排列方式等进行美化,代码如下:
5、运行代码,效果如下:可见,经过CSS样式美化,鼠标经过的时候,显示蓝色。
6、利用CSS编写代码,实现鼠标经过时显示下划线效果,代码如下:
7、在浏览器运行代码,实现了想要的效果。
我们在点击超链接的时候,会发现
这四个状态,链接的文本会发生不一样的状态,这样的效果就是用CSS的伪类选择器来实现。
正确的CSS顺序应该是
Why?
因为这四个CSS的优先级是一样的,所有后者会覆盖前者。
从实现的步骤来分析,就应该是这样排列才对。
用户的操作步骤是
1. 还没有点击链接
那么只有 a:link 这一条样式生效,用户看到的是没有点击的样式。
2. 鼠标移上去悬浮在链接上
那么 a: link 和 a: hover 这两条生效,由于 a: hover 在后面,所以样式3覆盖了样式1,显示的是鼠标移上去悬浮在链接上这个样式
3. 鼠标按了下去
那么 a:link 、 a:hover 和 a:active 这三条生效, a:active 覆盖了前两者,显示出来的就是鼠标点击时候的样式。
4. 点击完发生链接之后
那么 a: visited 这一条永久生效,显示出来的就是链接后的样式。
总之,必须是,
需要准备的材料分别有:电脑、浏览器、html编辑器。
1、首先,打开html编辑器,新建html文件,例如:index.html。
2、在index.html中的style标签中,输入css代码:a:visited {color: blueviolet;}。
3、浏览器运行index.html页面,此时超链接文本单击后的样式被设置了文字紫色颜色。
/* 字体链接样式 */
td.firstLevelMenuClass a:link {color: #3E8BAC; text-decoration: none;} /* 未访问的链接 */
td.firstLevelMenuClass a:visited {color: #FFFFFF; text-decoration: none;} /* 已访问的链接 */
td.firstLevelMenuClass a:hover {color: #FFFFFF;} /* 鼠标移动到链接上 */
td.firstLevelMenuClass a:active {color: #FFFFFF;} /* 选定的链接 */
/* 鼠标事件背景样式 */
td.firstLevelMenuClass:hover {background-image: url(../../Public/img/menu_first_down_bg.gif); } /* 鼠标移动到链接上 */
td.span style="color:#cc0000;"firstLevelMenuClassHover/span{background-image: url(../../Public/img/menu_first_down_bg.gif); }
td.firstLevelMenuClass{background-image: url(../../Public/img/head_menu_center.gif); }
JS:
[javascript] view plain copy
/*
* 取得对应类和标签的HTML元素
* clsName:给定类名
* tagName:给定的HTML元素,如果为任意 tagName='*'
*
*/
function getElementsByClassName(clsName, tagName) {
var ClassElements = [];
selElements = document.getElementsByTagName(tagName);
for (var i = 0; i selElements.length; i++) {
if (selElements[i].className == clsName) {
ClassElements[ClassElements.length] = selElements[i];
}
}
return ClassElements;
}
//通过改变元素class名达到间接改变背景样式
function onFirstMenuChangeBg(e) {
//先清除已经改变的元素背景样式
var getElements = getElementsByClassName('span style="color:#cc0000;"firstLevelMenuClassHover/span', 'td');
for (var i = 0; i getElements.length; i++) {
getElements[i].className = "firstLevelMenuClass";
}
//设置鼠标点击元素背景样式
e.className = "firstLevelMenuClassHover";
}
HTML:
[html] view plain copy
td class="firstLevelMenuClass" id="firstLevelMenu0" onclick="onFirstMenuChangeBg(this);"
a href='#'测试0/a
/td
td class="firstLevelMenuClass" id="firstLevelMenu1" onclick="onFirstMenuChangeBg(this);"
a href='#'测试1/a
/td
td class="firstLevelMenuClass" id="firstLevelMenu2" onclick="onFirstMenuChangeBg(this);"
a href='#'测试2/a
/td
点儿开头是class选择器。
css选择器有这么常用的几种:
.开头为class选择器;
#开头为id选择器;
直接节点元素开头就是标签选择器;
子类选择器:例如diva{};
后代选择器:例如div a{}。
1.1 内联样式表
在标签中直接添加style 例:p style=“” /p
1.2 内嵌样式表
作为一个独立区域内嵌在网页内,必须卸载head标签内
例:head
style=“”
/style
/head
1.3 外部样式表
即css样式表,需要新建一个css文件,用来放样式表。如果在html文件中调用样式表,需在html文件中点击 右键→CSS样式→附加样式表。(一般用link连接方式)
注:有些标签会有默认的边距,一般写代码的时候会先去除(也可以设置其他需要的样式)
* (对所有标签起作用)
{margin:0px; (边距)
padding:0px;} (间距)