`
bluedusk
  • 浏览: 270180 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CSS代码的命名惯例

阅读更多

CSS代码的命名惯例一直是大家热门讨论的话题。今天暴风彬彬想通过分析一个流行三栏布局中的必要元素,来为大家讲解关于使用语义化方法替代结构化方法来命名CSS类的建议和指导。

 

 

CSS类命名的语义化VS结构化方式

  一般而言,CSS类名的语义化声明方式应当考虑你的页面中某个相对元素的”用意”,独立于它的”定位”或确切的特性(结构化方式)。像left-bar, red-text, small-title…这些都属于结构化定义的例子。

让我们看看下面这个例子:

CSS-语义化-结构化

  …而现在我们想把页面中的元素调换一下位置,如果你使用的是结构化方式(1),那么你就要把所有CSS类名重新进行定义,因为它们的位置变了。在布局(3)中,我们看到元素都倒转了: right-bar 现在成了 “left-bar”,而 left-content 成了 “right-content”。如果你使用语义化方式则避免了此类问题。

 

  换句话说,使用语义化方式的话,你在修改网站布局的时候可以仅仅修改相关CSS类的属性即可,而不用修改它们的类名了,如果网站的代码很庞大,这将节省大量的时间。

  彬Go会经常更新前端开发/网页设计等相关技术及教程文章,欢迎订阅本博客来及时浏览本博客的最新教程及资源。

关于语义化的一些建议:

  在开始之前,我想推荐两种简单的编写较好的CSS代码的指导方针:

  1. 为CSS类名定义的时候,尽量使用小写字母,如果有两个以上的单词,在每个单词之间使用”-”符或单词首字母大写(第一个单词除外)。如:”main-content”或”mainContent”。
  2. 优化CSS代码,仅创建关键主要的CSS类并重新为子元素使用符合HTML标准的标签(h1, h2, p, ul, li, blockquote,…),例如,不要使用这种哦你那个方式:

<div class=”main”>
    <div class=”main-title”>…</div>
    <div class=”main-paragraph”>…</div>
</div>

而要这样写:

<div class=“main”>
    <h1></h1>
    <p></p>
</div>

三栏布局中使用语义化方式的例子

  让我们来通过这个简单的例子讲解一下如何为经典的三栏布局使用语义化方式命名:

CSS-语义化-教程

   使用语义化方式为CSS命名可以像这样:

#container{…}
/*—- Top section —-*/
    #header{…}
    #navbar{…}
    /*—- Main —-*/
    #menu{…}
    #main{…}
    #sidebar{…}
    /*—- Footer —-*/
    #footer{…}

  1. Container
    #container“ 就是将你页面中的所有元素包在一起的部分,这部分你还可以命名为: “wrapper“, “wrap“, “page“.
  2. Header
    “#header” 是网站页面的头部区域,一般来讲,它包含网站的logo和一些其他元素。这部分你还可以命名为:”top“, “logo“, “page-header” (或 pageHeader).
  3. Navbar
    #navbar“等同于横向的导航栏,是最典型的网页元素。这部分你还可以命名为:“nav”“navigation”“nav-wrapper”.
  4. Menu
    “#Menu”区域包含一般的链接和菜单,这部分你还可以命名为: “sub-nav “, “links“.
  5. Main
    “#Main”是网站的主要区域,如果是博客的话它将包含你的日志。这部分你还可以命名为: “content“, “main-content” (or “mainContent”)。
  6. Sidebar
    “#Sidebar” 部分可以包含网站的次要内容,比如最近更新内容列表、关于网站的介绍或广告元素等…这部分你还可以命名为: “sub-nav“, “side-panel“, “secondary-content“.
  7. Footer
    “#Footer”包含网站的一些附加信息,这部分你还可以命名为: “copyright“.


本文链接:http://blog.bingo929.com/css-coding-semantic-naming.html

分享到:
评论

相关推荐

    CSS代码命名惯例语义化的方法.docx

    在CSS编码中,语义化的命名惯例是一种最佳实践,它强调了类名应反映元素的含义,而不是其外观或位置。语义化命名能够提高代码的可读性、可维护性和适应性,尤其是在大型项目中。以下是关于CSS语义化命名的一些详细...

    CSS代码命名惯例语义化的方法.pdf

    遵循一些基本的语义化命名建议可以帮助编写更清晰的CSS代码: 1. 使用小写字母:为了确保类名的可读性,建议全使用小写字母。如果类名由多个单词组成,可以使用连字符(-)或者驼峰式命名(如`mainContent`)来分隔...

    CSS编程规范精典适合初学者

    CSS 编程规范是指在编写 CSS 代码时所遵循的规则和惯例,以确保代码的可读性、可维护性和可扩展性。在本文中,我们将详细介绍 CSS 编程规范的主要内容,包括 CSS 命名规范、CSS 书写顺序、CSS 命名规则等。 CSS ...

    HTML_CSS_JavaScript命名规范

    4. 命名惯例:开发者常使用如header、content、nav、sidebar、footer等通用名称,但不应视为固定标准,应结合项目需求制定个性化的命名规则。 JavaScript命名规范: 1. 变量命名:遵循驼峰式命名法,如variableName...

    Metro UI CSS学习笔记Demo

    虽然这个名字没有明确指出它是何种类型的文件,但根据常见命名惯例,这可能是一个PHP文件,可能包含了使用Metro UI CSS框架的PHP代码示例。PHP是一种广泛使用的服务器端脚本语言,常用于动态网站开发。结合 Metro UI...

    CSS教程:语义化方法替代结构化方法

     CSS代码的命名惯例一直是大家热门讨论的话题。今天软件开发网想通过分析一个流行三栏布局中的必要元素,来为大家讲解关于使用语义化方法替代结构化方法来命名CSS类的建议和指导。 CSS类命名的语义化VS结构化方式 ...

    纯CSS3绘制的黑色图标按钮组合特效源码.zip

    【标题】"纯CSS3绘制的黑色图标按钮组合特效源码.zip"是一个包含利用纯CSS3技术实现的黑色图标按钮组合特效的代码资源。这个压缩包主要针对前端开发者,特别是那些希望在网页设计中实现独特视觉效果的设计师或开发者...

    思考Web站点设计对类以及id的命名方式

    遵循这样的命名惯例可以使代码更易于理解和维护,尤其是在多人协作的项目中,它能减少沟通成本,提高团队效率。 然而,需要注意的是,尽管这些通用的命名方式很实用,但并没有统一的标准。每个开发者或团队可能会有...

    practices:个人编码惯例

    SCSS(Sassy CSS),作为CSS预处理器,允许开发者使用变量、嵌套规则、混合、函数等特性编写更模块化和可维护的CSS代码。以下是对"practices:个人编码惯例"这一主题的深入探讨,特别是针对SCSS的实践指南。 1. **...

    软件编码规范

    - **样式分离**:将CSS代码与HTML分离,以提高代码的可维护性。 - **选择器使用**:合理使用CSS选择器,避免过于复杂的选择器。 #### 10. 编码惯例 最后,还有一些通用的编码惯例值得遵循。 通过以上详细的介绍,...

    nexter:CSS网格UI

    由于只给出了"nexter-master"这一文件名,我们可以推测这可能是一个Git仓库的主分支名,遵循了常见的Git仓库命名惯例,其中"master"通常代表默认分支。这可能包含了整个Nexter CSS网格UI的源代码、示例、文档等内容...

    JAVA编码规范

    本篇将基于给定文件的标题、描述、标签和部分内容,深入探讨JAVA编码规范的关键知识点,涵盖文件管理、命名规范、缩进排版、注释、声明、语句符号、空白处理、编程惯例以及WEB部分的规范。 ### 文件管理与组织 ###...

    feature_section_2::rocket: :comet: 你好,这是我的纯 CSS 块中的功能部分。 这是随时可以使用的,漂亮且响应Swift的部分

    7. **预处理器**:如Sass或Less,它们扩展了CSS的功能,允许变量、嵌套规则、函数等,使得CSS代码更加模块化和易于维护。 综上所述,"feature_section_2"可能是一个利用HTML和CSS实现的响应式功能区块,结合了HTML...

    slider_3-main.zip

    虽然没有具体的标签提供额外信息,我们可以根据通常的命名惯例来推测其内容。"slider"通常指的是滑动菜单、幻灯片展示或者图像轮播功能,而"_3"可能表示这是该系列的第三个版本或是有三个主要部分。 在压缩包...

    java编码规范

    良好的命名规范有助于提高代码的可读性和可维护性。 ##### 9.1 命名规则 - **包命名**:全部小写,多个单词之间用点分隔。 - **类、接口命名**:首字母大写的驼峰式命名。 - **方法命名**:动词开头的小驼峰式命名...

    Java语言编码规范

    - **提升代码质量**:规范化的代码结构和命名约定有助于发现潜在错误,降低bug的发生率。 - **展示专业形象**:对外发布的代码如果遵循良好的编码规范,能够体现团队的专业性和对产品质量的重视。 ##### 1.2 遵守...

    portfolio-blog_v1-master.rar

    【描述】"portfolio-blog_v1-master.rar" 没有提供额外的详细信息,但根据一般命名惯例,"v1-master" 指示这是该项目的第一个主要版本(v1)并且可能是其主分支的代码,主分支通常是开发人员进行主要开发和维护的...

    飞特商城后台管理系统 v1.0.zip

    7. **开发技术**:根据"freeter-admin-master"的命名惯例,它可能是一个基于某种前端框架(如React、Angular或Vue)的后台管理系统,采用MVC(Model-View-Controller)模式进行开发,结合后端API接口实现数据交互。...

    at7_ex01.rar

    由于没有具体的描述,我们只能根据常见的IT知识和文件命名惯例来推测其中可能包含的内容。通常,"at7"可能是课程、项目或者任务的编号,而"ex01"则表示这是该系列的第一个练习或实验。 在IT领域,尤其是编程和数据...

    Proyectos

    【压缩包子文件的文件名称列表】"Proyectos-master" 这个文件名遵循了一种常见的开源项目命名惯例,"master"通常是Git仓库中的默认分支名,表示这是项目的主分支。这暗示了压缩包可能包含一个完整的项目源码结构,...

Global site tag (gtag.js) - Google Analytics