CSS3 - 说说 CSS 上的第一个变量 currentColor, 及扯扯 inherit

简介: • currentColor– 这货说是CSS3的一个特性,但是用变量来说会更好理解;• 兼容性[IE9+ 及主流的FF,chrome ]。• 但是IE10及edge有一些BUG(用于渐变的时候会不生效)• Safari and iOS Safari 8 之前,作用于部分伪元素也不生效 ,比如:before 和:after• currentColor拿的是文本的color的值,也就是可以理解为 currentColor = color• currentColor可以作用于常见到的色彩作用域(border,box-shadow,outline-color,background-colo


版权声明:保留原博文链接及作者的情况下,请尽情转载吧!!!


介绍


  • currentColor– 这货说是CSS3的一个特性,但是用变量来说会更好理解;


  • 兼容性[IE9+ 及主流的FF,chrome ]。
  • 但是IE10及edge有一些BUG(用于渐变的时候会不生效
  • Safari and iOS Safari 8 之前,作用于部分伪元素也不生效 ,比如:before:after
  • currentColor拿的是文本的color的值,也就是可以理解为 currentColor = color
  • currentColor可以作用于常见到的色彩作用域(border,box-shadow,outline-color,background-color等)
  • currentColor会向上遍历,自身color不设置则取父类,父类不设置则取:root根元素的,啥都没就浏览器默认值


  • inherit– 这个存在已久,这里扯扯关于这货的一些技巧


  • 使用inherit 表明要继承于父元素的样式属性,会使子元素继承了那些不会被自动继承的属性.
  • inherit还能作用于伪类元素 ,继承主体的一些特性,比如做一个角标,下拉箭头等等


只要用的好,我们写出的代码可以更加简洁,方便理解和维护;


效果图


父元素


黑色背景区域



渐变背景区域



子元素


FFFF区域



角标



代码加注释


currentColor && inherit
    .cC {
        /* currentColor */
        height: 200px;
        width: 200px;
        color: #161616;
        background-color: currentColor;
        border: 3px solid currentColor;
        box-shadow: 2px 2px 2px currentColor;
    }
    .test {
        /* 继承父类的颜色及阴影设置 */
        color: inherit;
        background: #01E498;
        display: block;
        outline:2px solid #BF0808;
        border: 1px solid #FFFFFF;
        box-shadow: inherit;
        width: 50px;
        height: 50px;
    }
    .aaa{
        display: inline-block;
        height: 10px;
        width: 20px;
        /* 继承父类的大小及边框形状但有自身的颜色值 */
        border-width: inherit;
        border-style: inherit;
        border-color: #27C6AE;
    }
    /* 角标继承主体 */
    .trangle{
        height: 200px;
        width: 200px;
        color: #60C344;
        font-size: 20px;
        font-weight: 700;
        border: 2px solid currentColor;
        position: relative;
        background-image: linear-gradient(30deg , rgba(56,35,155,.5),currentColor);
        background-color: #FF0000;
    }
    .trangle::after{
        /* 脱离文档流的元素,默认都是块级元素哦, display:block; */
        position: absolute;
        top: 0;
        left: 0;
        content: '100';
        height: 0;
        width: 0;
        color: #000;
        font-size: inherit; /*继承主体的字体大小*/
        font-weight: inherit;
        border-width:30px 30px 30px;
        border-style:inherit; /*继承主体的实线*/
        border-color:#E30B0B #E30B0B transparent ;
    }
            FFFF 啊啊啊


目录
相关文章
|
13天前
|
前端开发 JavaScript
如何在 JavaScript 中访问和修改 CSS 变量?
【10月更文挑战第28天】通过以上方法,可以在JavaScript中灵活地访问和修改CSS变量,从而实现根据用户交互、页面状态等动态地改变页面样式,为网页添加更多的交互性和动态效果。在实际应用中,可以根据具体的需求和场景选择合适的方法来操作CSS变量。
|
13天前
|
前端开发 JavaScript 数据处理
CSS 变量的作用域和 JavaScript 变量的作用域有什么不同?
【10月更文挑战第28天】CSS变量和JavaScript变量虽然都有各自的作用域概念,但由于它们所属的语言和应用场景不同,其作用域的定义、范围、覆盖规则以及与其他语言特性的交互方式等方面都存在明显的差异。理解这些差异有助于更好地在Web开发中分别运用它们来实现预期的页面效果和功能逻辑。
|
13天前
|
前端开发 JavaScript
如何在 CSS 变量中使用函数?
【10月更文挑战第28天】虽然CSS变量本身不能像传统编程语言中的函数那样直接进行复杂的运算和逻辑处理,但通过CSS预处理器、`calc()` 函数以及与JavaScript的结合,可以在很大程度上实现类似函数的功能,提高CSS样式的灵活性和可维护性,满足各种不同的页面设计和交互需求。
|
13天前
|
前端开发 开发者 容器
CSS 变量的作用域是什么?
【10月更文挑战第28天】理解CSS变量的作用域规则对于有效地使用CSS变量来组织和管理页面样式非常重要。通过合理地利用全局作用域和局部作用域,以及掌握变量的覆盖和继承规则,可以创建更具可维护性、灵活性和可扩展性的CSS样式表,实现各种复杂的页面设计和样式需求。
|
13天前
|
前端开发 JavaScript UED
|
13天前
|
前端开发 JavaScript UED
如何使用 JavaScript 动态修改 CSS 变量的值?
【10月更文挑战第28天】使用JavaScript动态修改CSS变量的值可以为页面带来更丰富的交互效果和动态样式变化,根据不同的应用场景和需求,可以选择合适的方法来实现CSS变量的动态修改,从而提高页面的灵活性和用户体验。
|
1月前
|
前端开发
【CSS】纯css3螺旋状loading加载特效
【CSS】纯css3螺旋状loading加载特效
29 4
|
2月前
|
前端开发
Vue3基础(十ba)___在css中使用props或者计算属性的变量,来实现动态样式
本文介绍了如何在Vue3中通过CSS变量和props或计算属性来实现动态样式。
42 0
|
5月前
|
前端开发 容器
CSS3 新增背景属性 + 新增边框属性(如果想知道CSS3新增背景属性和新增边框属性的知识点,那么只看这一篇就够了!)
CSS3 新增背景属性 + 新增边框属性(如果想知道CSS3新增背景属性和新增边框属性的知识点,那么只看这一篇就够了!)
|
5月前
|
Web App开发 前端开发 编译器
CSS3私有前缀+新增盒模型相关属性(如果想知道CSS3私有前缀、新增盒模型相关属性的知识点,那么只看这一篇就足够了!)
CSS3私有前缀+新增盒模型相关属性(如果想知道CSS3私有前缀、新增盒模型相关属性的知识点,那么只看这一篇就足够了!)

热门文章

最新文章