欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
  源代码下载
 
  https://github.com/comehope/front-end-daily-challenges
 
  代码解读
 
  定义dom,导航中包含一个无序列表,列表中有一个列表项:
 
  <nav>
 
  <ul>
 
  <li>home</li>
 
  </ul>
 
  </nav>
 
  居中显示:
 
  body{
 
  margin:0;
 
  height:100vh;
 
  display:flex;
 
  align-items:center;
 
  justify-content:center;
 
  background-color:lightyellow;
 
  }
 
  隐藏列表项前端的引导符号:
 
  navul{
 
  padding:0;
 
  list-style-type:none;
 
  }
 
  设置容器尺寸:
 
  navli{
 
  width:8em;
 
  height:2em;
 
  font-size:25px;
 
  }
 
  设置文字样式:
 
  navli{
 
  font-size:25px;
 
  text-align:center;
 
  line-height:2em;
 
  font-family:sans-serif;
 
  text-transform:capitalize;
 
  }
 
  添加伪元素,伪元素是2个小球:
 
  navli{
 
  position:relative;
 
  }
 
  navli::before,
 
  navli::after{
 
  content:'';
 
  position:absolute;
 
  width:0.6em;
 
  height:0.6em;
 
  background-color:gainsboro;
 
  border-radius:50%;
 
  }
 
  把小球定位在左右两端:
 
  navli::before{
 
  top:calc(50%-0.6em/2);
 
  left:0;
 
  }
 
  navli::after{
 
  bottom:calc(50%-0.6em/2);
 
  right:0;
 
  }
 
  接下来设置按钮悬停效果。
 
  当鼠标悬停在按钮上时,让小球变为与容器大小相等的矩形:
 
  navli:hover::before,
 
  navli:hover::after{
 
  width:100%;
 
  height:100%;
 
  border-radius:0;
 
  }
 
  第其中一个矩形稍向右下角错位,并且加深它的颜色,形成阴影效果:
 
  navli:hover::before{
 
  z-index:-1;
 
  top:0;
 
  }
 
  navli:hover::after{
 
  z-index:-2;
 
  bottom:-0.4em;
 
  right:-0.4em;
 
  filter:brightness(0.8);
 
  }
 
  设置悬停的颜色,伪元素的矩形背景变为蓝色,文字变为白色:
 
  navli:hover{
 
  color:white;
 
  }
 
  navli:hover::before,
 
  navli:hover::after{
 
  background-color:dodgerblue;
 
  }
 
  设置缓动时间,其中伪元素的缓动时间函数用拟人的动画效果:
 
  navli{
 
  transition:0.5s;
 
  }
 
  navli::before,
 
  navli::after{
 
  transition:0.5scubic-bezier(0.5,-0.5,0.25,1.5);
 
  }
 
  再增加几个按钮:
 
  <nav>
 
  <ul>
 
  <li>home</li>
 
  <li>products</li>
 
  <li>services</li>
 
  <li>contact</li>
 
  </ul>
 
  </nav>
 
  最后,增加按钮之间的间距:
 
  navli{
 
  margin:0.8em;
 
  }
 
  大功告成!





3648225804-5b8dbe1c21af2_articlex.gif





本文转载自中文网


 

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/css3-style/c55461.shtml