十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
我们在很多时候其实是需要在网页中设置鼠标效果的,有些是自动生成的,比如一个link链接,那么鼠标移上去自动会变成一个手的样子去点击,有时候一个input输入框,那么鼠标就自动变成一个英文大写I的样子,那么我们是否可以将更多对象设置成我们需要的样子呢?这完全是可以的,接下来就看下效果吧
成都创新互联长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为弓长岭企业提供专业的网站设计、成都网站设计,弓长岭网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。
onClick:鼠标单击事件。(是指鼠标按下,然后松开时产生。)
onDblClick:鼠标双击事件。(是指鼠标快速按下,松开,并再次按下时产生。)
onMouseDown:鼠标按下事件。(鼠标按下时即产生。)
onMouseUp:鼠标释放事件。(是指鼠标从按下的状态到弹起。)
onMouseMove:鼠标移动事件。(是指在特定元素上移动鼠标。)
onMouseOver:鼠标经过事件。(是指,当指针从外界往元素上移动时产生。)
onMouseOut:鼠标离开事件。(是指鼠标从特定元素上离开时产生。)
onLoad:载入事件。(当图象或页面结束载入时产生。)
onUnload:卸载事件。(当访问者离开页面时产生。)
onScroll:滚动条滚动事件。(当访问者使用卷轴上移或下移时产生。)
将这个自定义样式应用到图片上,在浏览器中预览到图片变成了黑白,我们再定义一个样式“.over”,这个样式没有任何内容,是空样式,样式表代码如下:
.over {}
.out {filter: Gray}
然后在图片标记(IMG)里加上“onMouseOver="this.className='over'" onMouseOut="this.className='out'"”,意思为当鼠标经过时,图片为over样式,即彩色正常图象;当鼠标离开时,图片为out样式,即黑白图像。oMouseOver和onMouseOut是鼠标事件,this.className=”…”表示当前对象的class名 为…,注意大小写不要写错,JS对大小写非常敏感。
这样这个效果就完成了,保存后在浏览器里打开,图象是黑白的,当鼠标移上去时,图象变成彩色,鼠标离开时,图象又变回黑白。只要发挥你的想象,通过this.className方法还可以做出很多好看的鼠标效果。
十字
文本光标
等待
默认
问号
左右箭头
上下箭头
系统自动给出效果
系统自动给出效果
:hover 选择器用于选择鼠标指针浮动在上面的元素。
提示: :hover 选择器可用于所有元素,不只是链接。
提示: :link 选择器设置指向未被访问页面的链接的样式,:visited 选择器用于设置指向已被访问的页面的链接,:active 选择器用于活动链接。
注释: 在 CSS 定义中,:hover 必须位于 :link 和 :visited 之后(如果存在的话),这样样式才能生效。
分析如下:
首先你要把代码写好,百左边是1级目录列表,度右边是2级目录列表,然后2级目录最大的知div用display:none先隐藏起来,道用hover。
当鼠标经过1级目录时,给2级目录最回大的div添加display:block属性答让它显示出来。
扩展资料:
1、精简的代码,使用DIV+CSS布局,页面代码精简,这一点相信对XHTML有所了解的都知道。代码精简提高了百度蜘蛛的爬行效率以及高效性,能在最短的时间内爬完整个页面,同时这样对收录质量有一定好处;
2、提高访问速度、增加用户体验性
使得加载速度得到很大的提高,那么用户点击页面的等待时间就越少,用户体验性的增加相应的带来就是网站受到搜索引擎的喜欢,进而提高网站排名。
3、div+css结构清晰,很容易被搜索引擎搜索到,天生就是适合优化seo,降低网页大小,让网页体积变得更小。注意:div+css结构清晰、精简,不意味着可以全部用div+css结构,比如通篇HTML标签全DIV的,貌似除了head之上及body之上及之外,其它全是div。
就如同整个HTML是一万个毫不相干的内容拼装起来,或者通篇是divulli结构的,就如同这个页面所有元素全是列表。事实上这两种情况还相当普遍,因为曲解了“DIV+CSS”的真实含义,也许根本就不应该有这个说法,因为一个完整页面几乎不可能仅仅DIV+CSS就能完成。
参考资料来源:百度百科-div+css
我们在点击超链接的时候,会发现
这四个状态,链接的文本会发生不一样的状态,这样的效果就是用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 这一条永久生效,显示出来的就是链接后的样式。
总之,必须是,
/* 字体链接样式 */
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
1、新建一个HTML文件,文件名为test.html,title标题为"CSS实现鼠标经过导航的超链接时显示下划线效果"。
2、在页面编写nav标签,在里面放三个超链接(首页、栏目一、栏目二),代码如下:
3、运行代码,效果如下:
4、使用css对导航的字体的字体大小、颜色、排列方式等进行美化,代码如下:
5、运行代码,效果如下:可见,经过CSS样式美化,鼠标经过的时候,显示蓝色。
6、利用CSS编写代码,实现鼠标经过时显示下划线效果,代码如下:
7、在浏览器运行代码,实现了想要的效果。