网站开发之鼠标悬停简单特效实现(四)

        鼠标悬停等操作和特效是网站设计非常重要的一个内容,常见的包括包括:鼠标移动悬停放大、鼠标悬停背景颜色变换、鼠标悬停下拉菜单显示、图片旋转等特效,这篇文章主要是总结HTML和JavaScript中关于鼠标操作的一些特效,希望基础性文章对你有所帮助,如果文章中存在错误或不足之处,还请海涵~

一. 鼠标悬停图片放大效果

        该功能主要是通过超链接<a>实现的,其中hover是表示悬停的效果:

<html>
<head>
<title>鼠标悬停放大</title>
<style> 
    #resize a:hover { position: absolute;}
    #resize a:hover img { width: 200px; height: 200px}
</style>      
</head>
<body>
	<p>图片悬停放大图片</p>
 	<div id="resize">
 		<a href="index.html">
    		<img src="move.jpg" border=0  height="50" width="50" />
    	</a>
	</div>
</body>
</html>
        其中运行的效果如下所示:
  

        注意:hover表示悬停,图片对应“a:hover img”。



二. 鼠标悬停背景颜色变换

        核心代码如下所示,主要通过鼠标悬停hover设置超链接变换。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>鼠标悬停背景色变换</title>
<style type="text/css">
    .navigation {
        margin:0 auto;      /* 居中显示 */
        text-align: center;
        width: 600px;
        height: 50px;
        margin-top: 20px;
        background-color: #FFC1E0;
    }
    h2 {
        float: left;        /* 水平显示 */
        background-color: #4F282D;
        height: 40px;
        width: 92px;
        font-family: "Palatino Linotype";
        font-weight: 400;
        text-align: center;
        padding-top: 0px;
        margin-top: 4px;    /* 否则h2下移 */
        margin-left: 6px;
    }
    .navigation a {
        color: #1AFD9C;    /* 超链接字体颜色 */
        text-decoration: none;
    }
    .navigation h2 a:hover {
        color: #39F;       /* 超链接悬停变换颜色 */
    }
    .navigation h2:hover {
        background-color: #F9F900;
    }
</style>
</head>
<body>
    <div class="navigation">
        <h2><a href="#">首页</a></h2>
        <h2><a href="#">关于我</a></h2>
        <h2><a href="#">相册</a></h2>
        <h2><a href="#">心情</a></h2>
        <h2><a href="#">留言</a></h2>
        <h2><a href="#">文章</a></h2>
   </div>
</body>
</html>
        运行结果如下所示,鼠标悬停前的效果:


        鼠标移动到背景上面的效果如下所示:

        下面讲解几个重点:
        1、在<div class="navigation">布局过程中,需要在CSS中设置"margin:0 auto;",才能让它居中显示,这段代码的含义是:第一个值就是元素的上下边距0,第二个值就是左右边距。当元素的定义了width属性时,auto还能实现居中的效果。

        2、在CSS中设置h2,需要添加"float: left;",使其水平显示,不增加该句的效果如下所示:


    

        3、整个DIV布局代码如下所示,h2会向下移动一段距离,这时CSS中通过"margin-top: 4px;"进行微调。

        4、悬停的核心代码如下所示,其中"text-decoration: none;"设置超链接无下划线,然后是悬停在超链接a和字体h2的变换效果。注意冒号(:)和hover之间不能有空格,否则效果消失。



三. 鼠标悬停图片旋转

        下面这段代码是网上找到的,鼠标悬停图片旋转的特效,非常不错,推荐使用。
        旋转参考地址:http://www.w3school.com.cn/cssref/pr_transform.asp
        PS:代码忘记出处了,如果谁知道提醒我,我补加原文地址。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>图片旋转</title>

<style type="text/css">
    .photo-container {
        -webkit-perspective: 1200px; /* 透视视图 */
        perspective: 1200px; /* 透视视图 */
        width:150px;
    }
    .rotate-box {
        position:relative;
        left:10%;
        -webkit-transform-style: preserve-3d; /* 3D 转换 */
        transform-style: preserve-3d; /* 3D 转换 */
        transition:1s ease; /* 转换效果持续 1秒 */
    }
    .rotate-box:after {
        content:' ';
        display:block;
        width:100%;
        -webkit-transform:rotateX(90deg);
        transform:rotateX(90deg);
        background-image: radial-gradient(ellipse closest-side, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 100%);
    }
    .rotate-box img {
        width:150px;
        height:150px;
    }
    .photo-container:hover .rotate-box {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }
</style>
</head>
<body>
<p>图片旋转</p>
<div class="photo-container">
    <div class="rotate-box">
        <img src="move.jpg" alt="rotate 3d旋转" />
    </div>
</div>
</body>
</html>
        鼠标悬停的效果如下所示:

     


四. 鼠标悬停下拉菜单显示

        这段代码主要是通过鼠标悬停,显示下菜单的效果,希望对你有所帮助。

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<title>鼠标悬停下拉</title> 
<style type="text/css"> 
    #main {
        margin:0 auto;      /* 居中显示 */  
        text-align: center;  
        width: 700px;  
        height: 50px;  
        margin-top: 20px;  
        background-color: #FFC1E0;  
    }
    /* 设置红色的3个框:首页 关于我们 我们的服务 */ 
    #nav { 
        float: left;
        line-height: 24px; 
        list-style-type: none; /* UL无样式 */ 
        background: #666; 
        width: 90%;          /* 总长度 */
        height: 40px;
        margin-left: 10px;     /* 距离左边 */
        margin-right: 10px;
        margin-top: 5px; 
    } 
    /* 三个li的样式设置 block及宽高 */
    #nav a { 
        display: block; 
        width: 200px; 
        height: 40px;
        padding-top: 5px;
        text-align:center;  
    } 
    #nav a:link { 
        color:#666; 
        text-decoration:none;  /* 无下划线 */
    } 
    #nav a:visited { 
        color:#666;
        text-decoration:none; 
    } 
    #nav a:hover {  /* 鼠标无下划线加粗 */
        color:#FFF;
        text-decoration:none;
        font-weight:bold; 
    } 
    #nav li { 
        float: left;         /* 增加水平显示 */
        width: 200px;        /* 设置宽度 */
        background:#CCC; 
        height: 40px;
        margin-left: 1px;
    } 
    #nav li a:hover{        /* 鼠标悬停li颜色变换 */
        background: #0F0; 
        height: 35px;
    } 
    #nav li ul { 
        line-height: 27px; 
        list-style-type: none;
        text-align:left; 
        left: -999em; 
        width: 200px; 
        position: absolute; 
    } 
    #nav li ul li{ 
        float: left; 
        width: 200px; 
        background: #F6F6F6;  /* 下拉菜单颜色 */ 
    } 
    #nav li ul a { 
        display: block; 
        width: 180px;
        text-align:left;
        padding-left:24px; 
    } 
    #nav li ul a:link { 
        color:#666; 
        text-decoration:none; 
    } 
    #nav li ul a:visited { 
        color:#666;
        text-decoration:none; 
    } 
    #nav li ul a:hover { 
        color:#F3F3F3;
        text-decoration:none;
        font-weight:normal; 
        width: 156px;
        background:#C00; 
    } 
    #nav li:hover ul { 
        left: auto; 
    } 
    #nav li.sfhover ul { 
        left: auto; 
    } 
    #content { 
        clear: left; 
    } 
</style> 
</head> 
<body> 
<div id="main">
  <ul id="nav">
    <li><a href="#">首页</a>
      <ul>
        <li><a href="http://www.baidu.com">Personal</a></li>
        <li><a href="#">Group</a></li>
        <li><a href="#">Administrator</a></li>
      </ul>
    </li>
    <li><a href="#">关于我们</a>
      <ul>
        <li><a href="#">我们的故事</a></li>
        <li><a href="#">我们的团队</a></li>
        <li><a href="#">我们的青春</a></li>
      </ul>
    </li>
    <li><a href="#">我们的服务</a>
      <ul>
        <li><a href="#">网页设计</a></li>
        <li><a href="#">页面制作</a></li>
        <li><a href="#">程序开发</a></li>
      </ul>
    </li>
   </ul>
   </div>
</body> 
</html>

        运行效果如下图所示:




        下面这段代码是简单实现鼠标悬停下拉菜单弹出:

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<title>鼠标悬停下拉</title> 
<style>
    ul.menu, ul.menu li{margin:0px;padding:0px;list-style:none;position:relative;}
    ul.menu li{line-height:25px}
    ul.menu li{float:left;margin-left:10px}
    ul.menu div{display:none;position:absolute;top:20px;left:0px}
    ul.menu div a{display:block}
    ul.menu li:hover div{display:block;}
</style>
</head> 
<body> 
<div id="main">
  <ul class="menu">
    <li><a href="#">Menu1</a><div><a href="#">menu11</a><a href="#">menu12</a></div></li>
    <li><a href="#">Menu2</a><div><a href="#">menu21</a><a href="#">menu22</a></div></li>
    <li><a href="#">Menu3</a><div><a href="#">menu31</a><a href="#">menu32</a></div></li>
  </ul>
</div>
</body> 
</html>
        显示效果如下所示:




        希望文章对你有所帮助,这是简单总结了HTML鼠标常见的事件。
        这个网站很多经典效果,但要登录。网址:http://www.16css.com/menu/

        下面是今天晚上发表的一篇QQ说说:
        如果说当老师是我的第一个愿望,花了我18年时间,三个月前终于实现;那么,我的第二个愿望,想有一个自己的个人网站,最近也终于实现了,好开心啊,哈哈哈。
        欢迎大家访问: www.eastmountyxz.com
        大四毕业那年我在去遵义支教的路上写下这样一首诗:

贵州众美路迢迢,
未负劳心此一遭。
搜得破书三四本,
也堪将去教尔曹。
        期待自己的第三个愿望,网站目前只有首页,太忙了还没丰富进去,更多课程内容见我的CSDN。最后当然得感谢沈同学做的首页,哈哈哈,没白教这些学生,真心感谢。
但行好事,莫问前程。
待随满天李桃,再追学友趣事。
        同样,待我已老,也会把自己的每个阶段的人生都丰富到这个网站中去,感觉自己一辈子都与学校学生有关了吧!享受在学校里与同学,学生的生活,发自内心的enjoy。
        日子长着,校园这壶老酒还需我慢慢品尝。
        有学生说我的第三个愿望是:找个妹子谈谈人生和我的第四个愿意,这个不错。
        有学生又说:我是他大学最好的老师
        其实,我真的很荣幸认识自己的每一个学生,所以也会用心对待任何一个并坚持。
        哎,又鸡汤了,当老师后咋变成这样了,fuck~
        (By:Eastmount 2016-11-06 半夜2点 http://blog.csdn.net/eastmount/ )

  • 31
    点赞
  • 115
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: HTML网页特效源代码是一组用于实现网页特效HTML代码。这些源代码可以包括CSS样式和JavaScript脚本,用于创建各种各样的动画、过渡和交互效果,使网页更具吸引力和互动性。 其中,CSS样式用于定义元素的外观和排版效果。通过为元素添加不同的CSS类和属性,可以改变元素的背景颜色、字体样式、边框等,从而实现网页特效要求的各种效果。 JavaScript脚本则用于实现更复杂的交互和动画效果。通过使用JavaScript库和框架,例如jQuery和React等,开发人员可以通过编写代码来控制元素的动态行为和效果。例如,通过操纵元素的位置、大小、透明度和旋转等属性,可以实现元素的平滑滚动、淡入淡出效果以及鼠标悬停时的交互反应。 根据具体需求,html网页特效源代码可以包括各种各样的特效,例如图片轮播、折叠菜单、模态框、视差滚动和动画效果等。这些特效源代码可以从网络上的开源代码库或开发者社区获取,也可以根据需求自行编写。 总之,HTML网页特效源代码是用于实现网页各种特效的一组HTML、CSS和JavaScript代码。通过运用这些源代码,开发人员可以为网页添加丰富多样的特效效果,提升用户体验。 ### 回答2: HTML网页特效源代码指的是在HTML网页中添加一些动态、交互和视觉效果的代码,以提升网页的用户体验和吸引力。下面是一个简单的例子-点击按钮弹出提示框的HTML源代码: ```html <!DOCTYPE html> <html> <head> <title>网页特效示例</title> <style> .button { padding: 10px 20px; background-color: #4CAF50; color: white; border-radius: 4px; cursor: pointer; } </style> <script> function showAlert() { alert("Hello, World!"); } </script> </head> <body> <h1>点击按钮弹出提示框</h1> <button class="button" onclick="showAlert()">点击我</button> </body> </html> ``` 在这个例子中,我们首先定义了一个样式类`.button`,用于设置按钮的样式。接着定义了一个JavaScript函数`showAlert()`,当按钮被点击时将调用此函数。最后,在按钮的`onclick`属性中绑定了`showAlert()`函数,表示点击按钮时执行该函数。 当用户在浏览器中打开这个HTML文件时,会看到一个标题为"点击按钮弹出提示框"的网页。当用户点击按钮时,将弹出一个提示框,其中显示的内容是"Hello, World!"。点击提示框上的“确定”按钮,提示框将关闭。 这只是HTML网页特效源代码的一个简单例子,实际上可以实现更多复杂的效果。通过结合HTML、CSS和JavaScript,我们可以为网页添加各种各样的动态效果、过渡效果、悬停效果、轮播效果等,以增强用户对网页的互动和视觉体验。 ### 回答3: HTML网页特效是指通过在网页中添加特定的HTML代码或者引入外部的CSS、JavaScript文件,使网页具有一些特殊的效果, 提升用户体验和页面的吸引力。 常见的HTML网页特效包括但不限于以下几种: 1. 图片轮播:通过CSS和JavaScript实现实现图片的自动轮播或者手动切换的效果,使网页更加生动有趣。 2. 鼠标交互效果:通过CSS设置鼠标悬停或点击元素时的特殊效果,例如改变背景颜色、放大缩小、旋转等,增加用户和页面的交互性。 3. 页面滚动效果:通过JavaScript实现页面滚动时的特效,如导航栏随着滚动固定在页面顶部、滚动到指定位置时出现特效等,让页面更加流畅和有层次感。 4. 下拉菜单:通过HTML和CSS实现,当鼠标悬停或点击菜单时,展示隐藏的子菜单选项,提升网页的可用性和导航效果。 5. 表单验证效果:通过JavaScript实现对用户输入内容的验证,例如输入框的输入格式、必填项的验证等,提醒用户输入内容是否合法。 6. 动画效果:通过CSS3实现各种动画效果,如旋转、淡入淡出、弹跳等,使页面更加生动有趣。 7. 响应式布局:通过CSS媒体查询和弹性布局实现自适应不同屏幕大小的特效,保证在不同设备上都能呈现良好的页面效果。 以上只是一小部分HTML网页特效,实际上还有很多种类和方式。在实现这些特效时,开发者可以借助已有的开源代码、框架或者自己编写CSS和JavaScript代码。请注意,在使用特效时要保证页面的加载速度和兼容性,避免特效影响用户体验或者在部分设备和浏览器上无法正常显示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eastmount

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值