一 border-width不支持百分比值

1 不符合客观逻辑

2 w3成都一种约定吧

3 边框本身就像是一个包裹内容的界限

类似的还有outline,box-shadow text-shadow均不支持百分比

4 边框宽度的枚举

thin:1px

medium(默认):3px  因为border-style:double这个样式至少需要3px才会有可视化显示效果,

thick:5px

二 border-style类型

1 solid

2 dashed 虚线

虚线在chrome firefox的稀疏密度为3:1 而ie为1:1所以ie中需要与前面相比较密

3  dotted 点线

点线在ie中为圆点,而chrome和firefox为方框,因此在ie中可使用dotted点线方式圆角效果,但是这个圆角很不明显

3 double 双线

使用得比较少,double的计算规则,中间为透明

1px:0+1+0;

2px:1+0+1;

3px:1+1+1;

4px:1+2+1;

5px:2+1+2;

6px:2+2+2;

7px:2+3+2;

8px:3+2+3; 中间为+-1间隔进行,可以看出 double会将边框宽度进行等分,比如border-top:60px double red,那么将会进行这样的拆分,20+20+20 中间为透明也就会看到2跟红色等长线

也就是说双线宽度永远相等,剩余则为中间间隔,

使用double可以实现一些技巧性绘图,且兼容性非常好 如三道横杠

border-top:60px double red;border-bottom:20px solid;

4 inset 内凹

内凹使用非常少,主要用来实现一些有点点质感的样式

5 其他的一些样式一是使用非常少,而是兼容性很差

三 color与border-color

在不显式指定border-color的时候,默认使用color作为边框颜色 如border:1px solid;color:red;这里的边框将显示为红色

使用默认的颜色用途在于只需要改变color时候边框可以与之同步,比如一些使用字图图标的情况下,改变图标颜色,边框也随之改变,如 .box:hover{color:red}

四 border与background定位

1 局限

由于background的定位是相对于边框的左上角,那么要想背景在右边的时候就咋办呢?

那么我们可以将left设置为100%,但是与右边又想要距离,怎么办呢?可以使用border-right:20px solid transparent 右侧具有一个透明20像素的边框就使得背景看起来有一定的间距

五 border与三角图形

1 正三角形

比如一个span:after{width:0px;height:0px; border-width:10px;border:}

六 border透明边框

用途非常广,兼容性非常好,常常用于增加鼠标点击响应区增加,透明但是却占据区域;

1 增加响应区域大小

比如我们有一个16*16的单选框,这个时候响应区域非常小,那么增加透明边框如 border:10px solid transparent;由于边框透明了,要想再次显示边框效果,则使用边框阴影效果

box-shadow,进行边框阴影模拟,阴影内陷即可

2 增减可视渲染区域

比如我们想要一张图片改变颜色,可以使用将元素进行滤镜投影,而投影又是可以使用颜色设置,那么我们就可以将元素本身因此,但是投影并不隐藏,此时只有使用透明边框方式,看不见元素本身,因而是投影也

得到显示

如icon{position:relative left -20px;border-right:20px solid transparent;fiter:drop-shadow(20px o #ff0000;)}

七 border在布局中的应用

css深入理解之 border的更多相关文章

  1. css深入理解之border

    1.  border-width border-width不支持百分比,类似的还有outline,box-shadow,text-shadow等 border-width支持关键字:thin(1px, ...

  2. CSS深入理解学习笔记之absolute

    1.absolute和float 拥有相同的特性表现: ①包裹性(容器应用之后,可以包裹里面的内容): <!doctype html> <html> <head> ...

  3. [转]图解CSS的padding,margin,border属性(详细介绍及举例说明)

    图解CSS的padding,margin,border属性 W3C组织建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落.列表.标题.图片以及层 ...

  4. CSS深入理解之absolute(HTML/CSS)

    absolute和float是同父异母的兄弟,因为它们具有相同点:包裹性与破坏性 absolute的特点 1.独立的,并且可以摆脱overflow的限制,无论是滚动还是隐藏: 2.无依赖,不受rela ...

  5. 图解CSS的padding,margin,border属性(详细介绍及举例说明)

    图解CSS的padding,margin,border属性 W3C组织建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落.列表.标题.图片以及层 ...

  6. CSS深入理解之overflow

    CSS深入理解之overflow 前言 这是跟着张鑫旭重学CSS的overflow篇 基本属性 overflow有以下五个基本属性: 1.visible : 默认值,具体表现为,应用此属性后,子元素超 ...

  7. CSS深入理解之line-height

    以下文字整理自慕课网——张鑫旭的<CSS深入理解之line-height>. line-height,又称行高,指的是两行文字基线之间的距离,又可以称为这行文字所占的高度. 定义三问: 什 ...

  8. CSS深入理解学习笔记之border

    1.border-width border-width为何不支持百分比:语义和使用场景决定的,现实中各种边框本身的概念就不存在百分比的使用方法. border-width支持关键字:thin.medi ...

  9. 【转】CSS深入理解流体特性和BFC特性下多栏自适应布局

    这篇文章发布于 2015年02月12日,星期四,23:36,归类于 css相关. 阅读 30873 次, 今日 63 次 by zhangxinxu from http://www.zhangxinx ...

随机推荐

  1. 献给初学者:小白该如何学习Linux操作系统

    一. 选择适合自己的Linux发行版 谈到linux的发行版别,太多了,可能谁也不能给出一个准确的数字,但是有一点是能够必定的,linux正在变得越来越盛行, 面临这么多的Linux 发行版,打算从别 ...

  2. Python-变量与基础数据类型

    ·变量(variable)  笔记: 变量本质上是一个占位符.变量可以用来存储整数.字符串.列表等.简单的可以理解为一个座位,可以坐老人也可以坐小孩,可以坐男孩,也可以坐女孩. 在python里,标识 ...

  3. C程序设计语言笔记-第一章

     The C Programming language notes 一 基础变量类型.运算符和判断循环         char                 字符型  character      ...

  4. Quartus II 项目文件分类及内容

  5. CLR via c#读书笔记八:泛型

    1.定义泛型类型或方法时,为类型指定的任何变量(比如T)都称为类型参数.使用泛型类型或方法时指定的具体数据类型称为类型实参. 2.System.Collections.Concurrent命名空间提供 ...

  6. PHP用url传递数组

    数组传递这么写:   echo "<a href=2.php?info=".base64_encode(serialize($information))." > ...

  7. 一个例子说明substr(), mb_substr() 和 mb_strcut()之间的区别

    例子来自PHP官方文档,我只是翻译下. http://www.php.net/manual/zh/function.mb-strcut.php header( 'Content-Type:text/h ...

  8. tomcat createSecureRandom 花费了将近10分钟

    http://www.th7.cn/Program/java/201603/776312.shtml 启动tomcat很慢,检查后发现:[localhost-startStop-1] org.apac ...

  9. Appium的环境搭建和配置

    Appium的环境搭建和配置 一.安装Nodejs 下载nodejs安装包(https://nodejs.org/en/download/)安装 下载后,双击安装文件,按提示来安装. 测试安装是否成功 ...

  10. 怎样下载Firefox与Chrome浏览器驱动

    在浏览器地址栏输入https://www.seleniumhq.org/ 打开Selenium官网 下载Firefox浏览器驱动 解压到本地 下载Chrome浏览器驱动 解压到本地 把这2个驱动放到P ...