zoukankan      html  css  js  c++  java
  • 控制边框颜色:《CSS3 Border-color》

    CSS3中有关于Border的属性一共有三个:圆角border-radius,图片边框border-images,边框多颜色border-color,其中圆角border-radius是常用的一个属性,而且现在很多网站制作圆角效果都使用border-radius来实现;

    在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的bborder-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版本以上的浏览器才能支持,所以此属性的应用范围相对来说很少,几乎来说没什么地方使用。如果只是学习的话,还是可以试试效果。如果需要应用到项目中的话,还是时机不成熟。那么今天我就介绍到这里了.

  • 相关阅读:
    10. Regular Expression Matching
    9. Palindrome Number
    6. ZigZag Conversion
    5. Longest Palindromic Substring
    4. Median of Two Sorted Arrays
    3. Longest Substring Without Repeating Characters
    2. Add Two Numbers
    链式表的按序号查找
    可持久化线段树——区间更新hdu4348
    主席树——树链上第k大spoj COT
  • 原文地址:https://www.cnblogs.com/chenguiya/p/3835723.html
Copyright © 2011-2022 走看看