請問大神right:0可以刪除嗎?還有 background: linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);top前面不用加to嗎?
<!doctype html>
<html>
<head>
? ? <meta charset="UTF-8">
<title>CSS制作立體導(dǎo)航</title>
<link rel="stylesheet" >
<style>
body{
?background: #ebebeb;
}
.nav{
?width:560px;
?height: 50px;
?font:bold 0/50px Arial;
?text-align:center;
?margin:40px auto 0;
background: #f65f57;
? ? ? ? border-radius:10px;
? ? ? ? box-shadow:0px 8px 0px #900;
/*制作圓*/
? ? ? ? ? /*制作導(dǎo)航立體風(fēng)格*/
}
.nav a{
?display: inline-block;
-webkit-transition: all 0.2s ease-in;
-moz-transition: all 0.2s ease-in;
? -o-transition: all 0.2s ease-in;
? -ms-transition: all 0.2s ease-in;
? transition: all 0.2s ease-in;
}
.nav a:hover{
?-webkit-transform:rotate(10deg);
?-moz-transform:rotate(10deg);
?-o-transform:rotate(10deg);
?-ms-transform:rotate(10deg);
?transform:rotate(10deg);
}
.nav li{
?position:relative;
?display:inline-block;
?padding:0 16px;
?font-size: 13px;
?text-shadow:1px 2px 4px rgba(0,0,0,.5);
?list-style: none outside none;
}
/*使用偽元素制作導(dǎo)航列表項分隔線*/
? ? ?.nav li::before,.nav li::after{
?content:"";
?position:absolute;
?top:14px;
?height: 25px;
?width: 1px;
}
.nav li::after{
?right: 0;
?background: -moz-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
?background: -webkit-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
?background: -o-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
?background: -ms-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
?background: linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
}
.nav li::before{
?left: 0;
?background: -moz-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
?background: -webkit-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
?background: -o-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
?background: -ms-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
?background: linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
}
? ? ? ?/*刪除第一項和最后一項導(dǎo)航分隔線*/
.nav li:first-child::before{
? ? ? ?background: none;
}
? ? ? ? ? ??
.nav li:last-child::after{
? ? ? ?background: none;
}
.nav a,
.nav a:hover{
?color:#fff;
?text-decoration: none;
}
</style>
</head>
<body>
<ul class="nav">
? ? ?<li><a href="">Home</a></li>
? ? ?<li><a href="">About Me</a></li>
? ? ?<li><a href="">Portfolio</a></li>
? ? ?<li><a href="">Blog</a></li>
? ? ?<li><a href="">Resources</a></li>
? ? ?<li><a href="">Contact Me</a></li>
</ul>
</body>
</html>
2019-05-16
right=0不能刪除,刪除了,你通過偽元素添加的這個空格位置就會被默認(rèn)緊貼(如果是:before就緊貼下一個元素的前面,:after則相反)。position:absolute是相對于該元素的父元素來定位的,所以right=0實際上是把這個空格位置緊貼在它的父元素也就是<li>的臉上,所以最后前后貼臉的兩個空格才能重合起來。至于top加不加to都行,事實證明它可以不加to.