【问题标题】:It is recommendable to type the color's name instead of its hex value in CSS?是否建议在 CSS 中输入颜色名称而不是十六进制值?
【发布时间】:2011-01-04 12:01:00
【问题描述】:

当我看到十六进制值时,我总是忘记我在 CSS 中处理的是什么颜色。我想改用这个名称(例如颜色:浅绿色)。所有浏览器都支持吗? (或者只有基本的 16 种颜色)?

【问题讨论】:

标签: css colors browser


【解决方案1】:

CSS 使用17 standard colors。这些都可以安全使用。还有system colors,其值取决于系统和浏览器,但可能有助于集成到系统默认值中,但CSS3 Color 已弃用(不管它是否有价值)。

【讨论】:

    【解决方案2】:

    我更喜欢十六进制值,因为所有浏览器都支持它,而且我可以指定比命名颜色更广泛的颜色。

    【讨论】:

      【解决方案3】:

      现在每个流行的浏览器都支持 17 种基本颜色加上 130 种颜色名称 http://www.w3.org/TR/2003/CR-css3-color-20030514/#svg-color 和 http://www.w3schools.com/css/css_colornames.asp

      因此,您不仅可以安全地使用这 17 种基本颜色名称,还可以使用 130 种 SVG 1.0 颜色关键字名称

      【讨论】:

        【解决方案4】:

        大型浏览器支持 rgb.txt 中的所有颜色,但有些定义可能略有不同。使用十六进制代码是安全的。

        【讨论】:

        • @Charlie:他们是现在。他们不是那时。
        • 正确,发表此评论时未指定 CSS3。但是,1998 年的 CSS2 规范链接到具有 16 种基本颜色及其 RGB 值的 HTML4 规范。不过,CSS1 规范并未指明 RGB 值。
        【解决方案5】:

        来自维基百科的详细阅读

        Web colors

        【讨论】:

          【解决方案6】:

          然后使用类

          <style>.lightorange {color: #FE7A15 !important}</style>
          
          <div class="lightorange info"></div>
          

          这样做的好处是您可以通过更新 CSS 来优化颜色。请注意,尽管以类的外观命名并不是一个好主意,因为您可能希望将所有橙色文本更改为红色,最终会得到 .lightorange {color:red} 类,这很奇怪。

          【讨论】:

            【解决方案7】:

            您总是可以将 cmets 添加到您的 CSS 文件中,而不是:

            .my_class {
                color: orange;
            }
            

            你可以写:

            .my_class {
                color: #ffa500; /* Orange */
            }
            

            这样您就可以确定颜色在每个浏览器中都完全相同,并且您也会看到名称。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2017-01-22
              • 2020-10-27
              • 2010-12-16
              相关资源
              最近更新 更多