hover

一个效果

就是鼠标放上去显示     一个块的边框

看上去很简单  

a{ display:inline-block; padding:2px 10px;}
a:hover{ border:1px solid #000; border-bottom:0;}

<a href="#">123</a> 

事实上做出来是会抖动的  因为加了边框之后 a元素的大小变化了  高度变大了1px 宽度变化了2px  所以文字就移位了。 所以没那么简单了

所以当hover的时候要保持之前的宽度不变  就不会产生抖动

可以这样写

a{ display:inline-block; padding:2px 10px;}
a:hover{ border:1px solid #000; border-bottom:0;padding:1px 9px;}

<a href="#">asd</a>

 

写了一些例子

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>t</title>
<style>
*{margin:0;padding:0;}
a{ color:#666; text-decoration:none;}
ul{ list-style:none;}

.tips{position:relative;}
body{ font-size:12px;}
.warp{ width:960px; margin:30px auto; ;}
.menu{ height:24px;}
.warp .menu .hd{
	height:22px; line-height:22px; padding:1px 9px 0; display:inline-block; position: relative; z-index:10; background-color:#FFF;
}
.warp .menu li{float:left; padding:2px 10px;height:22px; line-height:22px; }
.warp .menu .hover a{
	padding:0 8px;
	border:1px solid #d7d7d7;
	border-bottom:0;
}
.warp .menu .hover .bd{display:block}
.warp .menu .bd{padding:5px 10px; border:1px solid #d7d7d7;position:absolute; left:0; top:22px;  width:450px;display:none; background-color:#FFF;}
</style>
</head>
<body>
<div class="warp">
	<ul class="menu" id="xx">
    	<li>
        	<div  class="tips">
            	<a  href="#" class="hd">我擦擦擦擦擦</a>
                <div class="bd">
                	<p>你好你好你很好1111</p>
                    <p>你好你好你很好2222</p>
                    <p>你好你好你很好3333</p>
                    <p>你好你好你很好4444</p>
                </div>
            </div>
        </li>       
    </ul>

<style>
.menu2{ width:300px;}
.menu2 li{ line-height:22px; height:22px; padding-left:15px; border:1px solid #d7d7d7; margin-bottom:-1px; padding-bottom:1px;}
.menu2 li.end{ margin-bottom:0;}
.menu2 li:hover{border:1px solid #f00;margin-bottom:0;padding-bottom:0px;}
.menu2 li.end:hover{border:1px solid #f00;padding-bottom:1px;}
</style>
<br><br><br>
    <ul class="menu2">
    	<li>
        	<a href="#">你好你好你很好111</a>
        </li>
    	<li>
        	<a href="#">你好你好你很好111</a>
        </li>
    	<li>
        	<a href="#">你好你好你很好111</a>
        </li>
    	<li class="end">
        	<a href="#">你好你好你很好111</a>
        </li>                        
    </ul>
    
<style>
	.c3{ width:300px; border:1px solid #CCC;}
	.c3 .hd{ background:#EEE; overflow:hidden; zoom:1;padding:5px 10px 0; }
	.c3 .hd li{float:left; margin-right:5px;}
	.c3 .hd li a{ display:inline-block;height:22px; line-height:22px; padding:1px 9px 0;}
	.c3 .hd li.on a{border:1px solid #CCC; border-bottom:0; padding:0 8px; background:#fff;}
	.c3 .hd li a:hover{ border:1px solid #CCC; border-bottom:0; padding:0 8px; background:#fff;}
	.c3 .bd{ background:#fff; padding:10px;}
</style>
<br><br><br>
    <div id="d3" class="c3">
        <div class="hd">
            <ul>
                <li num="0" id="h3" class="on"><a href="#">人族</a></li>
                <li num="1"><a href="#">兽族</a></li>
                <li num="2"><a href="#">不死族</a></li>
                <li num="3"><a href="#">精灵族</a></li>
            </ul>   
        </div>
        <div class="bd">
        	<div id="b3">
            	<p>11111111111111</p>
                <p>11111111111111</p>
                <p>11111111111111</p>
            </div>
        	<div style="display:none">
            	<p>22222222222222</p>
                <p>22222222222222</p>
                <p>22222222222222</p>
            </div>
        	<div style="display:none">
            	<p>333333333333333</p>
                <p>333333333333333</p>
                <p>333333333333333</p>
            </div>
        	<div style="display:none">
            	<p>4444444444444444</p>
                <p>4444444444444444</p>
                <p>4444444444444444</p>
            </div>                                
        </div>
    </div>    
<style>
.warp .menu4{ background:#00F;}
.warp .menu4 li{ display:inline-block;  *display:inline;zoom:1; padding:2px 8px; margin-right:20px;}
.warp .menu4 li .c{ position:relative;}
.warp .menu4 li .c a{ color:#FFF; height:22px; line-height:22px; display:inline-block; padding:1px 9px 0px; position:relative;}
.warp .menu4 li .c a:hover{ border:1px solid #999; padding:0 8px; border-bottom:0; background:#fff; color:#000; z-index:9}
.warp .menu4 li.on a{border:1px solid #999; padding:0 8px; border-bottom:0; background:#fff; color:#000; z-index:9}
.warp .menu4 li .c .bd{display:none; width:150px; border:1px solid #999; background:#fff; position:absolute; top:22px; left:0; padding:10px;}
.warp .menu4 li.on .bd{display:block;}
</style>
<br><br><br>
    <div style="height:400px; background:#FF0">
        <ul id="d4" class="menu4">
        	<li>
            	<div class="c">
                	<a href="#">人族</a>
                    <div class="bd">
                    	<p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                    </div>
                </div>
            </li>
        	<li>
            	<div class="c">
                	<a href="#">兽族</a>
                    <div class="bd" style="left:-50px;">
                    	<p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                    </div>
                </div>
            </li>
        	<li>
            	<div class="c">
                	<a href="#">不死族</a>
                    <div class="bd" style="left:-90px;">
                    	<p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                    </div>
                </div>
            </li>
        	<li>
            	<div class="c">
                	<a href="#">精灵族</a>
                    <div class="bd" style="left:-118px;">
                    	<p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                        <p>很多很多英雄...</p>
                    </div>
                </div>
            </li>
        </ul>
    </div>
    
</div>


    <script type="text/javascript" src="jquery-1.7.1.min.js"></script>
    <script type="text/javascript" >
		window.onload = function(){
			$("#xx div")
				.bind("mouseover",function(){$(this).addClass("hover");})
				.bind("mouseout",function(){$(this).removeClass("hover");})
			
			
			var h3 = $("#h3"),
				b3 = $("#b3"),
				blocks = $("#d3 .bd div")
			$("#d3 .hd li")
				.bind("mouseover",function(){
					h3.removeClass("on");
					$(this).addClass("on");
					var num = $(this).attr("num");
					b3.hide();
					h3 = $(this);
					b3 = blocks.eq(num);
					b3.show();
				});
			
			$("#d4 li")
				.bind("mouseover",function(){$(this).addClass("on")})
				.bind("mouseout",function(){$(this).removeClass("on")})
		}
    </script>
</body>
</html>


 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值