美文网首页
第三章 CSS3 边框

第三章 CSS3 边框

作者: 喵了个咪O_O | 来源:发表于2019-03-17 21:07 被阅读0次

    css1和css2 中的边框属性

    • border-width 设置元素边框粗细
    • border-style 设置元素边框类型
    • border-color 设置元素边框颜色

    三个属性可以合并
    border: border-width border-style border-color ;

    border属性必须包border-style,其他两个可省略
    border-width  默认值 medium (3~4px)
    border-color  默认为字体的颜色
    border 缩写 1个值: TRBL  2个代表:上下 左右  3个值: 上 左右 下, 4个值:上 右 下 左
    

    3.2 CSS3 边框颜色属性

    -moz-border-top-colors

    css3属性 -moz-border-top-colors:color1 color2 ... colorn;

    多颜色边框 超过颜色剩余的宽度将显示colorn的颜色 目前只支持 火狐 3.0+

    3.3 图片边框属性

    border-image

    使用时加上浏览器私有属性前缀 -webkit-, -moz-, -ms-, -o-

    IE 不支持, FireFox 3.5+, Chrome 3.0+, Opera 10.5+, Safari 1.0+

    border-image: none |  <image>  [<number> | <percentage>] {1, 4}  [/<border-width>]  ? [stretch | repeat | round ]{0, 2}
    
    • none: 默认值, 表示边框无背景图
    • < image > : 设置图片
    • < number >: 设置边框图片的大小, 默认单位px, 可不写单位, 可以是 1~4个值
    • < percentage > : 用百分比的方式 设置截图片的大小
    • stretch | round | repeat : 设置边框背景图铺放方式, 可不写
    • stretch 拉伸背景图 默认(可不写)
    • round 平铺边框背景图 ( 对边框背景图进行适当的伸缩, 来适应边框宽度的大小,进行排列 )
    • repeat 重复边框背景图 ( 边框中间向两端不断平铺, 过程中保持切片大小不变, 缺点: 两端边缘有被切的现象)

    为了方便理解, 可将border-image分解为如下属性, 实际开发中不可分开写

    • 引入背景图片: border-image-source
    • 切割引入引入的背景图片 : border-image-slice
    • 边框图片的宽度 : border-image-width
    • 边框背景图片的排列方式: border-image-repeat
      border-image: <border-image-source >  || <border-image-slice> || [/<border-image-width>] || <border-image-repeat>
    
      webkit ( Chrome, Safari ) 内核下round和repeat无区别
    
      可以实现图片的无变形拉伸, 例如: 聊天气泡()保持边框不变内容拉伸
    

    3.4 圆角边框属性

    border-radius

    border-radius : none | < length > {1, 4} [ / < length > {1, 4}] ?

    若" / " 存在, '/'前面的值设置元素水平方向半径, '/' 后面设置元素圆角的垂直方向半径 ,, 若没有'/', 水平方向和垂直方向半径一样

    注意: 圆角属性对< table >, 当border-collapse: collapse; 不起作用; 当border-collapse : separate; 圆角显示正常

    2值代表: top-left/bottom-right, top-right/bottom-left

    3个值代表: top-left, top-right/bottom-left, bottom-right

    4个值分别代表 top-left, top-right, bottom-right, bottom-left

    若重置元素没有圆角, border-radius: 0; 设置none无效果;
    
    单个圆角效果 border-radius: 5px 0 0 0;
    

    不建议使用以方法设置单个角圆角效果

    由于各浏览器厂商对border-radius 子属性解析不一致, 造成了个浏览器border-radius属性的派生子属性写法不一致
    兼容性IE9+、Firefox 4+、Chrome、Safari 5+ 以及 Opera.

    单独设置圆角是不需要 ' / '

    • border-top-left-radius
    • border-top-right-radius
    • border-bottom-left-radius
    • border-bottom-right-radius
      兼容老版本
       1) Gecko内核浏览器 (FireFox, Flock等)
       -moz-border-radius-topleft : <length>  <length>
       -moz-border-radius-topright : <length>  <length>
       -moz-border-radius-bottomright: <length>  <length>
       -moz-border-radius-bottomleft : <length>  <length>
    
       2)  Webkit内核 (Chrome, Safari 等)
      -webkit-border-top-left-radius : <length>  <length>
    
         3) Presto和Trident 内核 (Opera IE9+)
         border-top-left-radius : <length>  <length>
    
       注意 : 1. 当圆角半径小于等于边框厚度是, 边框内部是直角效果, 当大于是, 有内圆角效果
                    border-radius外边半径 - border-width <= 0 ,  元素内角为直角
                    border-radius外边半径 - border-width > 0 元素内角具有圆角效果
                    元素内圆角半径(border-radius内边半径) = border-radius外边半径 - birder-width
               2. 当相邻边框宽度不同时, 这个角会从宽的边平滑到过渡到窄的边.
    

    3.5 css3盒子阴影

    border-shadow

    border-shadow : none | [ inset x-offset y-offset blur-radius spread-radius color], [ inset x-offset y-offset blur-radius spread-radius color], ...

    • none: 默认值, 无阴影
    • inset: 阴影类型, 可选值. 如不设置, 默认是外阴影, 如设置为内阴影 取值inset
    • x-offset: 阴影的水平偏移量. 值为正, 在元素的右边; 值为负, 在元素的左边
    • y-offset: 阴影的垂直偏移量. 值为正, 在元素的下边; 值为负, 在元素的上边
    • blur-radius: 阴影模糊半径. 可选值 值为整数. = 0时表示无模糊效果 > 0 取值越大阴影的边缘越模糊
    • spread-radius: 阴影扩展半径, 可选参数 正, 整个阴影扩大; 负 整个阴影缩小
    • color: 阴影的颜色, 可选参数 如不设定, 会取浏览器的默认颜色,各个浏览器默认颜色不同, webkit内核默认透明, 故一般不省略

    相关文章

      网友评论

          本文标题:第三章 CSS3 边框

          本文链接:https://www.haomeiwen.com/subject/aqmjeftx.html