zoukankan      html  css  js  c++  java
  • css命名为何不推荐使用下划线_

    一直习惯了在命名CSS样式名时使用下划线“_”做为单词的分隔符,这也是在写JS时惯用的写法。

    用过CSS hack的朋友应该知道,用下划线命名也是一种hack,如使用“_style”这样的命名,可以让IE外的大部分浏览器忽略这个样式的定义,所以使用“_”做为命名时的分隔符是不规范的。在做CSS检查时会出现错误提示,因此要避免使用下划线命名。

    为此得找一个能代替下划线而又合规范的符号,当然不是一定要用这种分隔符之类的,只是个人习惯问题。

    做了个小测试,将下划线分别用了“~”、“$”、“`”、“&”和“-”去代替,结果只有“-”号是可以使用的,而且对JS的支持也正常,看下测试:

    以下为引用的内容:

    -------------------------------CSS--------------------------------- 
     .try-a{ color:#00f; } 
     .try~a{ color:#00f; } 
     .try`a{ color:#00f; } 
     .try&a{ color:#00f; } 
     .try$a{ color:#00f; } 
      
     .try-b{ color:#f00; } 
     .try~b{ color:#f00; } 
     .try`b{ color:#f00; } 
     .try&b{ color:#f00; } 
     .try$b{ color:#f00; } 
    ---------------------------------------------------------------------- 
    -----------------------------HTML----------------------------------  
    <div id="a" class="try-a">try1</div> 
    <div id="b" class="try~a">try2</div> 
    <div id="c" class="try`a">try3</div> 
    <div id="d" class="try&a">try4</div> 
    <div id="e" class="try$a">try5</div>

    <input type="button" value="ok" onclick="b();" /> 
    ----------------------------------------------------------------------  
    ---------------------------------JS---------------------------------- 
    function b(){ 
      document.getElementById("a").className="try-b"; 
      document.getElementById("b").className="try~b"; 
      document.getElementById("c").className="try`b"; 
      document.getElementById("d").className="try&b"; 
      document.getElementById("e").className="try$b"; 
     } 
    ----------------------------------------------------------------------

    结果是“try1”变成了红色,显示正常。不过在CSS定义里,经常会用到ID选择符,如果在页面中的ID命名中使用了“_”,就免不了在CSS样式里出现下划线“_”了,所以在此还得注意在ID的命名上也要避免使用下划线。 

  • 相关阅读:
    《JAVA设计模式》中的代理模式Proxy
    《JAVA设计模式》中的外观模式Facade
    《JAVA设计模式》中的组合模式Composite
    《JAVA设计模式》中的享元模式Flyweight
    《JAVA设计模式》中的策略模式Strategy
    《JAVA设计模式》中的模板模式Template
    《JAVA设计模式》中的观察者模式Observer
    《JAVA设计模式》中的迭代器模式Iterator
    《JAVA设计模式》中的责任链模式Chain of Responsibility
    面对对象编程
  • 原文地址:https://www.cnblogs.com/bluers/p/3589516.html
Copyright © 2011-2022 走看看