CSS outline实现意想不到的效果

简介:

今天在微博看见@zhangxinxu召集各种实现了十字功能的方法。@大地Dudy和@灵感_idea都想到了用outline-offset这个方法,大开眼界。我就开始关注起了这个css属性。

这个属性其实很简单,就4种类型:

  • outline-width
  • outline-style
  • outline-color
  • outline-offset

DEMO

那让我们来试一试:

和border的区别

那不是和border很像吗?它们又有什么区别呢?

答:outline是位于边框外围的轮廓线,不会占据空间。

那我们让outline和border一起出现试试:

得出结论:

  1. 红色的轮廓线果然不会占据空间。这里,我特别把body的margin和padding都设置为0,为了效果更加明显。

  2. 轮廓线位于边框的外围。从效果可以看到,轮廓线位于border的外围。

好玩的地方呢?

之前,并没有看出什么有趣的地方,那是因为outline-offset还没有出场。

比如:

那~兼容性怎么样!?

之前都没有怎么遇见过,难道是因为兼容性特别不好?事实上,果然在兼容性上有问题:

所有的IE都不兼容。我亲自试了下,ie11下也会有问题。那只能默默忽略ie~很多时候,我们都因为兼容性而受到束缚。

属性可用的值速查

  • outline-width

    • thin medium thick px ex em
  • outline-style

    • outline-style: auto
    • outline-style: none
    • outline-style: dotted
    • outline-style: dashed
    • outline-style: solid
    • outline-style: double
    • outline-style: groove
    • outline-style: ridge
    • outline-style: inset
    • outline-style: outset
    • outline-style: inherit
  • outline-color

    • outline-color: invert outline-color: red
    • outline-color: inherit
  • outline-offset

    • px em inherit

那...以后的一些样式,我们是不是可以尝试用outline来实现呢?(不考虑IE情况下)期待相遇。

目录
相关文章
|
前端开发 容器
面试官:请使用 CSS 实现自适应正方形
面试官:请使用 CSS 实现自适应正方形
418 0
面试官:请使用 CSS 实现自适应正方形
|
前端开发 JavaScript 开发者
利用 SplitingJS 配合 CSS 实现文字"蠕动"效果
利用 SplitingJS 配合 CSS 实现文字"蠕动"效果
288 2
|
前端开发 JavaScript
HTML+CSS+JAVASCRIPT实现——情人节表白情书
本文主要介绍如何使用HTML三件套来实现制作一封情人节表白情书,富含情谊与爱,打动女生的心灵
556 2
HTML+CSS+JAVASCRIPT实现——情人节表白情书
|
移动开发 前端开发 小程序
【笔记】纯css实现列表水平滑动(图片或文字内容不限)
纯css实现列表水平滑动(图片或文字内容不限)
268 0
|
前端开发 容器
我已经说了5种css居中实现的方式了,面试官竟然说还不够?
这是一篇关于居中对齐方式的总结 开篇之前,先问一下大家都知道几种居中的实现方式? 面试时答出来两三个就不错了,就怕面试官还让你继续说。今天就来总结一下这些居中的方式 使用flex布局设置居中。 使用flex 时也能通过给子项设置margin: auto实现居中。 使用绝对定位的方式实现水平垂直居中。 使用grid设置居中。 使用grid时还能通过给子项设置margin: auto实现居中。 使用tabel-cell实现垂直居中。 还有一种不常用的方法实现垂直居中。 最后还有一种奇葩的方法。容器设置position: relative。孩子设置 top、left、bottom、right都设
131 0
我已经说了5种css居中实现的方式了,面试官竟然说还不够?
|
前端开发
HTML+CSS实现商品介绍模考(以Apple14为案例)
本文以最通俗易懂的语言为读者提供一个经典CSS小案例,商品介绍模块,并且结合时事,以Apple14为案例进行讲解。
135 0
HTML+CSS实现商品介绍模考(以Apple14为案例)
|
前端开发 JavaScript Windows
js实现body背景图自动扩缩 光靠css几乎无法实现这样的效果
js实现body背景图自动扩缩 光靠css几乎无法实现这样的效果
155 0
js实现body背景图自动扩缩 光靠css几乎无法实现这样的效果
|
前端开发
css实现弧形边框
css实现弧形边框
386 0
css实现弧形边框
|
前端开发 开发工具
教你用HTML+CSS实现百叶窗动画效果
我们浏览网页的时候总能看见一些炫酷的特效,比如百叶窗效果,本文我们就用HTML+CSS制作一个百叶窗小项目,适合刚学前端的小伙伴,使用代码简单易懂,很容易上手,学习完本文后,相信你也能敲出来属于自己的百叶窗效果,改变图片及相应盒子的大小,有女朋友的可以试着放几张在一起的照片,也是一件非常浪漫的事
441 0
教你用HTML+CSS实现百叶窗动画效果
|
JavaScript 前端开发
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单
600 2
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单