使用CSS3制作一个简单的Chrome模拟器

可以看出,Chrome标签的基本特点如下:

梯形
有圆角
宽度自适应

用图片可以轻松搞定,但是怎么能用图片呢?作为一个有追求的前端,肯定要用纯CSS3实现啊!

标签的HTML很简单:

XML/HTML Code复制内容到剪贴板

  1. <ul class="tabs">
  2. <li>新标签页</li>
  3. <li class="selected">百度一下,你就知道</li>
  4. <li>新标签页</li>
  5. </ul>
  6. 新建一个前端学习qun438905713,在群里大多数都是零基础学习者,大家相互帮助,相互解答,并且还准备很多学习资料,欢迎零基础的小伙伴来一起交流。

梯形的两端用:before 与 :after 轻松搞定。

CSS Code复制内容到剪贴板

  1. .tabs li:before,
  2. .tabs li:after {
  3. width: 16px;
  4. height: 24px;
  5. content: " ";
  6. border: 1px solid #3b5c95;
  7. }

处理定位的时候需要注意元素间的z-index关系。

CSS Code复制内容到剪贴板

  1. .tabs li {
  2. display: inline-block;
  3. position: relative;
  4. z-index: 0;
  5. }
  6. .tabs li:before,
  7. .tabs li:after {
  8. position: absolute;
  9. z-index: 3;
  10. }
  11. .tabs li:before {
  12. left: -12px;
  13. }
  14. .tabs li:after {
  15. rightright: -12px;
  16. }

变形则使用CSS3的transform。

CSS Code复制内容到剪贴板

  1. .tabs li:before {
  2. -o-transform: skew(-22deg);
  3. -ms-transform: skew(-22deg);
  4. -moz-transform: skew(-22deg);
  5. -webkit-transform: skew(-22deg);
  6. transform: skew(-22deg);
  7. }
  8. .tabs li:after {
  9. -o-transform: skew(22deg);
  10. -ms-transform: skew(22deg);
  11. -moz-transform: skew(22deg);
  12. -webkit-transform: skew(22deg);
  13. transform: skew(22deg);
  14. }

好了,差不多大功告成了。接下来还要稍微调整下,对照Chrome浏览器填充下渐变色,高度、宽度、位置也需要微调一下。

发布了38 篇原创文章 · 获赞 4 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/html886/article/details/104524594