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情况下)期待相遇。

目录
相关文章
|
前端开发 JavaScript 开发者
利用 SplitingJS 配合 CSS 实现文字"蠕动"效果
利用 SplitingJS 配合 CSS 实现文字"蠕动"效果
542 2
|
前端开发 JavaScript
HTML+CSS+JAVASCRIPT实现——情人节表白情书
本文主要介绍如何使用HTML三件套来实现制作一封情人节表白情书,富含情谊与爱,打动女生的心灵
1308 2
HTML+CSS+JAVASCRIPT实现——情人节表白情书
|
前端开发 容器
面试官:请使用 CSS 实现自适应正方形
面试官:请使用 CSS 实现自适应正方形
695 0
面试官:请使用 CSS 实现自适应正方形
|
JavaScript 前端开发
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单
1491 2
CSS进阶向--配合Vue动态样式实现“超炫酷”圆环菜单
|
前端开发 JavaScript
CSS进阶向--纯css实现流光边框(二)
CSS进阶向--纯css实现流光边框(二)
3108 1
CSS进阶向--纯css实现流光边框(二)
|
前端开发 JavaScript 程序员
CSS进阶向--纯css实现流光边框
CSS进阶向--纯css实现流光边框
2501 0
Html+Css实现——时间轴日志
本篇文章,主要讲解一下如何创建一个精美的时间轴日志页面,其中代码里具体的日志内容部分需要自行更改哦!
721 1
Html+Css实现——时间轴日志
|
前端开发
纯CSS实现跑马灯效果
又是一个安静的晚上,又是没有灵感的一天,又只能去逛逛codepen。看到一个流光的边框效果,我就想如何通过自己的方式来现这样一个效果。 突然又想起路边夜市的招牌,不就是一个流光效果加一个广告词吗。这下我的兴趣一下就激发起来了。
|
前端开发 容器
我已经说了5种css居中实现的方式了,面试官竟然说还不够?
这是一篇关于居中对齐方式的总结 开篇之前,先问一下大家都知道几种居中的实现方式? 面试时答出来两三个就不错了,就怕面试官还让你继续说。今天就来总结一下这些居中的方式 使用flex布局设置居中。 使用flex 时也能通过给子项设置margin: auto实现居中。 使用绝对定位的方式实现水平垂直居中。 使用grid设置居中。 使用grid时还能通过给子项设置margin: auto实现居中。 使用tabel-cell实现垂直居中。 还有一种不常用的方法实现垂直居中。 最后还有一种奇葩的方法。容器设置position: relative。孩子设置 top、left、bottom、right都设
446 0
我已经说了5种css居中实现的方式了,面试官竟然说还不够?
|
前端开发
HTML+CSS实现商品介绍模考(以Apple14为案例)
本文以最通俗易懂的语言为读者提供一个经典CSS小案例,商品介绍模块,并且结合时事,以Apple14为案例进行讲解。
320 0
HTML+CSS实现商品介绍模考(以Apple14为案例)

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    420
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    330
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    305
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    205
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    421
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    608
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    777
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    214
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    621
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    382