`

关于css的class命名中下划线的讨论

阅读更多

【前言】

   之前有同学查到class命名尽量不要用下划线,建议用横线-,或者用驼峰命名法。

   网上给的解释是:避免css属性名和值混合;另外IE6中不支持_开头的类名,例如_top这种不支持。

   为了检验真实性便去网上查了下,以下为笔录

 

【主体】

   (1)关于下划线,XHTML区分大小写,xhtml要求 标签名 属性名 值都要小写,并且要有双引号和 标签闭合 css 元素名称以及id和类名的命名也是区分大小写的(但是属性和值不区分),尽量小写,可以用-连字符,尽量不要用_下划线做连字符(IE6下_和-均失效) javascript 的变量和其他语法元素名都是区分大小写的,变量命名不允许有空格或者其他标点符号,只允许字母、数字、&和_下划线 综上所述,书写xhtml css javascript 尽量都要小写,连字符尽量用-(javascript的变量用_)

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

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

           关于CSS的hack详解,我在后面文章里做了介绍

 

【常见命名方式】

   calssname有3种方式:

   1、最常见的-连接,如g-nav, m-box,m-box2, m-box-2, 它能很好的表示语义。只是有些编辑器(如sublime)不能双击选中整个字符串,影响使用,如高亮等。

   2、用_连接,用的原因是:好看,和js的命名接近,可双击;缺点IE6不支持

   3、用驼峰命名className,用的原因是:和java的命名习惯接近,可以双击。最大的问题是css中的classname是不区分大小写的(标准不统一,有的浏览器的某些模式下是区分的)。用这个方式,最后html和css的命名完全一致。

 

【拓展】

   ①驼峰命名:

正如它的名称CamelCase所表示的那样,是指混合使用大小写字母来构成变量和函数的名字

案例:

printEmployeePaychecks();

print_employee_paychecks();

第一个函数名使用了骆驼式命名法——函数名中的每一个逻辑断点都有一个大写字母来标记;

第二个函数名使用了下划线法----函数名中的每一个逻辑断点都有一个下划线来标记。

 

【总结】

不建议使用_,推荐-与驼峰命名

 

 

 

 

 

 

 

 

.

分享到:
评论

相关推荐

    CSS网页布局ID和Class类的命名介绍

    本篇文章主要讲解了CSS网页布局中的ID和Class类的命名规则和使用原则。对于开发者来说,命名规则是一项非常重要的技能,因为它可以影响到整个网站的可读性、可维护性和可扩展性。 一、类名命名规则 类名命名规则...

    web前端+css命名 规范

    在Web前端开发中,CSS(层叠样式表)命名规范是至关重要的,它不仅有助于代码的可读性和可维护性,还能提升团队协作的效率。本文将深入探讨CSS命名规范及其重要性,并结合HTML和CSS的基础知识,为前端开发者提供一份...

    CSS命名规则

    在Web开发过程中,良好的CSS命名规则不仅有助于提高代码可读性与可维护性,还能避免不同浏览器之间的兼容性问题。本文将根据给定的内容深入探讨CSS选择器命名规则及其在实际应用中的注意事项。 #### 二、CSS选择器...

    dreamweaver中css的命名规则.pdf

    3. **类(Class)和ID(Identifier)命名**:对于CSS中的类和ID,建议使用组合的英文单词或英文单词的缩写,避免使用中文。类名和ID名可以用中划线`-`、下划线`_`或驼峰式(camelcase)来连接多个单词。例如,`#...

    dreamweaver中css的命名规则.docx

    在CSS选择器的命名中,class和id通常使用英文单词或组合,以体现其语义。有三种常见的组合方式:使用中划线连接单词(如`.space-banner`)、使用下划线连接(如`.space_banner`)或使用驼峰式命名(如`.spaceBanner`...

    css&html手册及命名规则等

    这个名为"css&html手册及命名规则等"的压缩包包含了一系列关于这两个核心技术的重要资源,旨在帮助用户快速理解和掌握它们。 CSS手册提供了全面的CSS语法、选择器、布局技术、动画和过渡、响应式设计等内容。它详细...

    div+css样式表的id和class常用命名规则

    在编写div+css样式表的过程中,一个重要的环节是对id和class的命名。id通常用于标识页面中的独特元素,而class则用于标识同一页面中可以多次使用的元素。合理且规范的命名可以使HTML文档结构清晰,便于开发者阅读和...

    HTML,CSS的命名的习惯总结..

    #### 四、XHTML文件中Class的命名 - **颜色**: 使用颜色的名称或16进制代码,例如: - `.red { color: red; }` - `.f60 { color: #f60; }` - `.ff8600 { color: #ff8600; }` - **字体大小**: 直接使用“font+...

    如何规范 CSS 的命名和书写

    - **避免使用下划线**:不建议使用下划线(_)作为CSS选择器的一部分,因为这可能会引起浏览器兼容性问题,特别是在旧版本的IE浏览器中。 #### Id和Class的选择器使用原则 - **Id的使用**:Id在HTML文档中应唯一...

    CSS属性编写顺序及命名规范

    5. **避免使用下划线**:在CSS选择器中不建议使用下划线(`_`),原因是输入时节省按键次数,以及解决浏览器兼容问题(例如,在IE6中,带下划线的选择器可能无效),同时便于与JavaScript变量名区分。 #### 三、CSS...

    Css命名规范大全.docx

    CSS命名规范是前端开发中的重要组成部分,它有助于提高代码的可读性,降低维护成本,尤其是在团队合作中显得尤为重要。规范的CSS命名规则能够帮助开发者快速理解代码含义,提高工作效率。 首先,我们要区分class和...

    Css命名规范大全.pdf

    5. **使用连字符**:在多个单词组成的名称中,使用连字符(-)而不是下划线(_)或驼峰命名(camelCase),如`footer-bar`而非`footer_bar`或`footerBar`,这更符合CSS的常见习惯。 6. **避免使用数字**:除非在...

    网页设计css命名规则

    网页设计中的CSS命名规则是构建高效、可维护的网页布局的关键。对于初学者而言,遵循一定的命名约定可以显著提升工作效率,特别是在团队合作中。以下是一些核心的CSS命名规则和概念: 1. **ID与Class的区别**: - ...

    CSS语义化命名方式及常用命名规则

    - **Class命名**:推荐使用描述性的名称,如颜色`.red`, `.f60`,字体大小`.font12px`, 对齐样式`.fl`, `.mt20`,标题`.titleBar`等。 4. **防止命名冲突**: - 在团队合作时,可以在类名前添加团队成员代号或...

    CSS的规范命名(最基础的东西)

    1. **避免使用连字符**:在CSS中,建议使用下划线或驼峰式命名而非连字符。 2. **使用英文**:为了保持一致性,建议使用英文命名。 3. **避免使用空格**:命名中不应包含空格。 4. **尽量简洁**:保持命名简短,但又...

    网页标准化-CSS命名规划

    3. **不使用中杠和下划线**:推荐使用驼峰式命名或短横线分隔,如`myClass`或`my-class`。 4. **避免缩写**:除非常见且易懂的单词,如`btn`代表`button`。 遵循这些命名规则,可以帮助开发者创建出清晰、一致的CSS...

    CSS命名规则[参考].pdf

    在软件开发中,CSS(Cascading Style Sheets)是用于定义HTML或XML(包括SVG、XHTML等)文档中...以上就是关于CSS命名规则及其在软件开发中的应用的详细解释,遵循这些规则可以创建更规范、易于理解和维护的CSS代码。

    网页制作中规范使用DIV+CSS命名规则.docx

    在网页制作中,规范使用`DIV+CSS`命名规则对于保持代码的整洁、可读性和维护性至关重要。`DIV`是HTML中的一个通用容器元素,而CSS(层叠样式表)用于定义这些元素的样式。良好的命名规则可以提高团队协作效率,避免...

    css样式表ID命名规则.docx

    以下是一些关于CSS ID命名规则的关键点和示例: 1. **唯一性**:每个ID在整个HTML文档中必须是唯一的,不允许有重复的ID。这是ID的基本特性,违反这一规则可能导致样式冲突和解析问题。 2. **语义化**:ID名应该...

Global site tag (gtag.js) - Google Analytics