【问题标题】:Is there a maximum length for the class name in CSS?CSS中的类名有最大长度吗?
【发布时间】:2010-02-03 13:18:24
【问题描述】:

CSS 中的类名是否有最大字符数?

【问题讨论】:

  • 所有答案都符合规范,但我想知道是否有 实际 限制,例如 IE8。

标签: css


【解决方案1】:
.thereisnomaximumlengthforaclassnameincss {
maxlength: no;
}

祝你好运! 它没有说最大长度。

【讨论】:

  • 这不会验证...:p
【解决方案2】:

没有上限。

基本上,名称可以以下划线 (_)、破折号 (-) 或字母 (a–z) 开头,然后紧跟字母或下划线,然后有任意数量的破折号、下划线、字母或数字:

-?[_a-zA-Z]+[_a-zA-Z0-9-]*

【讨论】:

  • 这解释了为什么我在使用哈希作为类名时遇到了麻烦。 (SHA、MD5 通常以数字开头)谢谢。
【解决方案3】:

不要忘记带宽。这似乎没有什么区别,但一个包含 30 个长名称的类的 css 文件可能会在大型网站上造成很大的性能问题

【讨论】:

  • +1,尽管有些事情告诉我,我们已经不是 1970 年代了,而且考虑到无用的 P2P 流量,CSS 中一些额外的 UTF8 代码点没什么大不了的。
  • 在移动设备上使用网络时,带宽也很重要。不是每个人都有快速的移动连接,一个巨大的 CSS 类中的很多长名称可以产生影响。
  • 不要忘记 html 中的类名。如果您有一个包含 1000 行 x 20 个单元格的表格,那么 TD 的任何类名长度都会乘以 20,000。所以类名“thereisnomaximumlengthforaclassnameincss”将花费你〜800kb。
【解决方案4】:

用于 CSS 2.1 的 W3C 架构 -

http://www.w3.org/TR/CSS21/

另外,我使用了他们的 CSS 验证器,其类名很长……它通过了验证 -

http://jigsaw.w3.org/css-validator/

【讨论】:

    【解决方案5】:

    要添加到其他人所写的内容,只是想添加如果 - 像我一样 - 你发现你有时会得到疯狂的长名字(因为你喜欢描述性)那么值得记住选择器,这也促进了风格重复使用并有助于保持内容易于阅读。

    例如

    h1 {
       1.5em;
    }
    
    styledParagraph {
       font-size: 1em;
    }
    
    /* Override the default font size if the styledParagraph element is inside an element with the class articlePage */
    .articlePage .styledParagraph {
        font-size: 1.5em;
    }
    
    /* Make all <h1> elements in .articlePage -> . styledParagraph larger than the default */
    .articlePage .styledParagraph h1 {
      font-size: 2em;
    }
    

    这得到了非常广泛的支持(即使在 MSIE 6 中),而且它比诸如 .articlePageStyleParagraphHeading 之类的类名更容易阅读。

    【讨论】:

      【解决方案6】:

      类似于this question 在 HTML 中的 ID 名称。似乎没有“实际”限制。

      我说尽可能短,同时仍然具有描述性 - 为什么还要用疯狂的长名字调情? :)

      【讨论】:

        猜你喜欢
        • 2019-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-28
        • 2013-03-28
        相关资源
        最近更新 更多