大家好,我是半夏,一个刚刚开始写文的沙雕程序员.如果喜欢我的文章,可以关注 点赞 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师~关注公众号:搞前端的半夏,了解更多前端知识! 点我探索新世界!

原文链接 ==>http://sylblog.xin/archives/39

前言

日常开发中,我们经常使用border来给元素增加一些美感,但是由于盒子模型的存在,border有时候会影响我们的判断,所以今天我们来介绍另一个属性来为元素增加一些美感。

outline

outlineCSS 中的属性在元素的外部绘制一条线。它类似于边界,除了:

  1. 它总是围绕所有边,你不能指定特定的边
  2. 它不是盒模型的一部分,因此不会影响元素或相邻元素的位置,也就是说outline outline不占据空间
  3. 它并不总是矩形

兼容性

除了IE浏览器,其他浏览器兼容性还是不错的。

语法

outline: [ <outline-width> || <outline-style> || <outline-color> ] | inherit

由此可见outline也是一个缩写的属性。

outline: 1px dashed red;

不占空间

首先定义一个p标签和一个div标签,然后div标签定义一个5px的border和一个20px的outline

p {
outline: 1px dashed red;
}
div {
border:5px solid #000;
outline: 20px dashed red;
} <p>outline: 1px dashed red;</p> <div>outline: 20px dashed red;</div>

最终的效果,可以清楚的看到div上定义的outlin已经跑到了p标签上。

不一是矩形

使用span进行测试,使用br进行换行,使得每一行的字数都不一样。

  <span>我是outline<br />
我可以创建非矩形<br />
的边框</span> span {
outline: 1px dashed red;
}

最终效果,可以看见outline只在字上面有。



换成border我们再试试

border:1px solid #000;

乍一看,好像border创建的也是不规则的呀,但是再仔细看,边框其实并不是不规则的,只是换行了而已。

outline-style 轮廓样式

属性值

dotted

dashed

solid

double

groove

ridge

inset

outset

outline-color 轮廓颜色

颜色值

outline-color: invert;

invert (IE兼容)

经测试:最新版的chrome和火狐浏览器不支持此值

仅在IE中测试使用

对比

页面的背景颜色是白色,outline就是黑色。

outline-color: invert;

页面的背景颜色是黑色,outline就是白色。

outline-width 轮廓宽度

属性值

thin

1px

medium

3px

thick

5px

<length>

outline-width: 10px;

outline-offset 轮廓偏移

数值

当参数值为正数时,表示轮廓向外偏移

outline-offset: 10px;

当参数值为负值时,表示轮廓向内偏移

outline-offset: -10px;

CSS 不规则的轮廓-outline的更多相关文章

  1. css盒子模型、边框border、外边距margin、填充padding、轮廓outline

    盒子模型:盒子默认的宽度为容器的宽度,也可以自省设定宽度,高度根据内容适应,也可以自行设定高度.min-height设定最小高度 一个盒子包括外边距.边框.内边距和实际内容 Margin(外边距):清 ...

  2. CSS轮廓outline

    http://www.cnblogs.com/xiaohuochai/p/5277416.html

  3. 边框(Border) 和 轮廓(Outline) 属性

    border 复合属性.设置对象边框的特性. 标签定义及使用说明 如果上述值缺少一个没有关系,例如border:#FF0000;是允许的. 默认值: not specified 继承: no Java ...

  4. 简单了解css3轮廓outline

    outline属性是用来设置一个或多个单独的轮廓属性的简写属性 , 例如 . 轮廓有下面几个属性: { outline-style: solid; outline-width: 10px; outli ...

  5. HTML学习笔记 CSS表格及轮廓案例 第八节 (原创)参考使用表

    #tb, tb1, tr, th, td { border: 5px solid blue; /*加边框*/ padding: 5px; /*内边距*/ } #tb1 { border-collaps ...

  6. 【CSS3】透明度opacity与rgba()区别、光标cursor、display、轮廓outline与margin及border区别、em和rem区别

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. CSS 不规则图形绘制

    基础技能1 - 神奇的border 我们先来画一个长方形: .Rectangle { height: 100px; width: 200px; background: darkgray; border ...

  8. CSS中border和outline的区别

    border: border-width:1px; border-style:solid; border-color:#ccc; 可以简写为:border:1ox solid #ccc; outlin ...

  9. CSS属性: 阴影 轮廓 渐变

    注: 本文摘自 宁静致远 - CSDN / 但愿人长久 千里共婵娟 - CSDN 阴影 使用box-shadow属性可以为元素添加阴影效果, 比如 box-shadow: h-shadow v-sha ...

随机推荐

  1. 单片,SOA 和微服务架构有什么区别?

    单片架构类似于大容器,其中应用程序的所有软件组件组装在一起并紧密 封装.第一个面向服务的架构是一种相互通信服务的集合.通信可以涉及简单的数 据传递,也可以涉及两个或多个协调某些活动的服务.微服务架构是 ...

  2. Zookeeper 的典型应用场景?

    Zookeeper 是一个典型的发布/订阅模式的分布式数据管理与协调框架,开发人员 可以使用它来进行分布式数据的发布和订阅. 通过对 Zookeeper 中丰富的数据节点进行交叉使用,配合 Watch ...

  3. 学习RabbitMQ(四)

      I. 消息中间件特点: 1,异步处理模式 消息发送者可以发送一个消息而无需等待响应,消息发送者将消息发送到一条虚拟的通道或队列上,消息接收者则订阅或监听该通道,一条消息可能最终转发给一个或多个消息 ...

  4. MyBatis Plus 2.3 个人笔记-02-基本注解

    实体类注解 /* * MybatisPlus会默认使用实体类的类名到数据中找对应的表. * */ @TableName("tbl_employee") public class E ...

  5. Idea学习之"使用SVN如何查看哪一行是哪一个人写的历史日志"

    点击出的方法 结果图 点击记录,显示详细

  6. 数字电路的多路复用(MUX)

    学习文章:https://mp.weixin.qq.com/s/1pfLfvkAPyhEMLvfnyDy0g 最基本--2选1的MUX结构: 可以看作是:assign Y=S?B:A; 下面使用MUX ...

  7. H5 视频播放解决方案

    前两天,美团推出的杨洋H5火爆朋友圈.里面主要的是多段视频播放.暂停.听起来很简单,但是由于腾讯白名单限制,在微信浏览器,qq浏览器,会自动将video标签中非腾讯域名的视频 ,自动全屏,结尾追加视频 ...

  8. ps基础总结

    1.复制图层:首先选中移动工具(V),鼠标右键选中需要复制的图层(快捷方式:上面勾选自动选择),接着一只手按住Alt键,另一只手点击鼠标左键(不松开),往左往右移动即可.若是对多个图层起作用,就可将需 ...

  9. visio2019专业版激活码

    这里面有    :  最新Project2019+ Visio2019专业增强版和专业版永久激活密钥分享 (weibo.com)

  10. js读取cookie 根据cookie名称获取值的方法

    //方法1 //存在问题:如果cookie中存在 aaaname=aa;name=bb 获取name的值就会出现错误function getCookie(c_name){ if (document.c ...