• CSS3 Border-color——W3CPlus http://www.w3cplus.com/content/css3-border-color


    CSS3中有关于Border的属性一共有三个:圆角border-radius图片边框border-image,边框多颜色border-color,其中圆角border-radius是常用的一个属性,而且现在很多网站制作圆角效果都使用border-radius来实现,具体的使用方法可以查阅本站有关于border-radius的介绍。今天我们主要来学习border-color的使用。

    border-color这个属性我想大家一定不会陌生,因为我们平时常能看到并使用这个属性。那么在CSS3中这个属性又有什么不同之处呢?又将如何使用呢?今天我们就带着这两个问题开始我们CSS3中的border-color的学习。在CSS2中,我们可以把border-color同时应用到不同的边框上,也可以分别在各边上色,如:

      border-color: <color>/*其中可以上一个值,也可以是多个值,具体我在这里不多说了,大家来时用到的也特别多*/
      /*我们可以分别给各边上色*/
      border-top-color: <color>/*给上边框上色*/
      border-right-color: <color> /*给右边框上色*/
      border-bottom-color:<color> /*给下边框上色*/
      border-left-color: <color> /*给左框上色*/
    

    上面展示的是给元素边框上色的方法,大家都知道这样可以给边框上唯一色。可是如果我们想给边框添加不同的颜色,比如说给边框添加一个渐变色,或者说一个彩色,那么我们前面的方法就无能为力了,那怎么办呢?为了达到这样的效果,CSS3就推出了其自己的border-color属性, 不过到目前为止只有Firefox 3.0+的浏览支持这个属性。也是因为这一点,css3的border-color应用是相当的少,据我的了解,目前还没有发现有项目应用css3的 border-color来实现边框特殊效果。但这一点都不会影响我们这些css3的爱好者学习css3各种属性的热情。下面我们就继续,看看css3的border-color是如何使用。

    前面我们说过CSS3的border-color目前只有Mozilla的Firefox3.0+浏览器支持,所以我们有必要在前面加上其前缀“-moz-”。现在我们来看看其语法的书写规则

      -moz-border-top-colors: <color> <color> <color>*; /*顶边边框*/
      -moz-border-right-colors:<color> <color> <color>*; /*右边边框*/
      -moz-border-bottom-colors: <color> <color> <color>*; /*底边边框*/
      -moz-border-left-colors: <color> <color> <color>*; /*左边边框*/ 
        

    从上面的语法规则来看,我们把元素四边分开了书写,但这里有一点和CSS2的不同之处,在CSS3中我们使用的是border- top-colors,border-right-colors,border-bottom-colors,border-left-colors,当 中的colors是个复数,而在CSS2中都是border-top-color,border-right-color,border-bottom- color,border-left-color。这一点大家一定要记住了,在CSS3中是“colors”因为我们是应用多色。这里大家一定会问,我们假如在各边应用的颜色相同时,能不能不分开写呢?直接写成:

      -moz-border-colors: <color> <color> <color> <color>*;/*这样缩写能行吗?*/
        

    针对这点,我要大声的告诉大家,上面的写法是错误的,我们不能像css2中的border-color这样缩写。如果缩写的话,是没有任何效果的。希望大家要记住这个不同之处,以免造成没有任何效果显示。

    上面我们介绍了CSS3的border-color与CSS2中的border-color在语法上的不同之处,下面我们接着来看看其取值上的不同之处。

    使用css3的border-color属性时,如果你的boder宽度设置了X px,那么你可以在这个边框上使用X种颜色,此时每一个颜色就是一个px。如果你的border宽度设置了10px,而你只运用了三四个颜色,那么最后一个颜色将会填充到后面的宽度上。

    下面我们来看一个简单的实例:

     .demo {
        200px;
       height: 100px;
       border: 5px solid transparent;
       -moz-border-top-colors: red blue white white black;
       -moz-border-right-colors: red blue white white black;
       -moz-border-bottom-colors: red blue white white black;
       -moz-border-left-colors: red blue white white black;       
     }
        

    效果如下所示:

    我们还可以利用这个属性制作渐变的边框效果

      .demo1 {
         200px;
        height: 100px;
        border: 10px solid transparent;
        border-radius: 15px 0 15px 0;
        -moz-border-top-colors:#a0a #909 #808 #707 #606 #505 #404 #303;
        -moz-border-right-colors:#a0a #909 #808 #707 #606 #505 #404 #303;
        -moz-border-bottom-colors:#a0a #909 #808 #707 #606 #505 #404 #303;
        -moz-border-left-colors:#a0a #909 #808 #707 #606 #505 #404 #303;
      }
        

    效果如下图所示:

    CSS3 中的border-color相对于前面介绍的CSS3属性来说比较简单点,所以今天也简单介绍了一下其使用的方法,以及取值的细节之处。最后在提醒大家 一点,到目前只有Firefox3.0版本以上的浏览器才能支持,所以此属性的应用范围相对来说很少,几乎来说没什么地方使用。如果只是学习的话,还是可 以试试效果。如果需要应用到项目中的话,还是时机不成熟。那么今天我就介绍到这里了,下一节我将会整理CSS3中border的最后一个属性border-image的使用方法,感兴趣的朋友可以随时观注本站的有关更新。

  • 相关阅读:
    HDU-1754 I Hate It (树状数组模板题——单点更新,区间查询最大值)
    HDU-1166 敌兵布阵 (树状数组模板题——单点更新,区间求和)
    JavaScript dotAll模式
    ECMAScript6补全字符串长度方法padStart()和padEnd()
    ECMAScript6重复字符串方法repeat()
    JavaScript确定一个字符串是否包含在另一个字符串中的四种方法
    JavaScript中label与break配合使用
    JavaScript数据结构与算法-集合练习
    JavaScript数据结构与算法-散列练习
    JavaScript数据结构与算法-字典练习
  • 原文地址:https://www.cnblogs.com/0621-barvo/p/4943152.html
Copyright © 2020-2023  润新知