代码之家  ›  专栏  ›  技术社区  ›  johnny

“语义正确”是什么意思?

  •  29
  • johnny  · 技术社区  · 15 年前

    我在CSS对话中见过很多。语义正确是什么意思?

    6 回复  |  直到 6 年前
        1
  •  46
  •   Nathan Long    6 年前

    标签正确

    这意味着你在说什么是事实。经典的例子是,如果某个东西是 table ,它应该包含数据的行和列。把它用于布局在语义上是不正确的——当它不是“这是一个表”时,你会说“这是一个表”。

    另一个例子:列表( <ul> <ol> )通常用于对类似项目进行分组( <li> )。你 能够 使用A div 为小组和A <span> 每件商品,每件款式 span 在一个单独的行上有一个项目符号点,它可能看起来像你想要的样子。但“这是一个列表”传达了更多的信息。

    适合HTML背后的理想

    HTML代表“超文本” 标记 它的目的是为你的内容加上标记。你做的越准确越好。HTML5引入了新的元素,以便更准确地标记常见的网页部件,如页眉和页脚。

    使它更有用

    所有这些语义标签都有助于机器解析您的内容,这有助于用户。例如:

    • 了解你的元素 允许浏览器使用合理的默认设置 品行端正 . 这意味着您需要做的定制工作更少,并且更可能在不同的浏览器中获得一致的结果。
    • 浏览器可以正确应用CSS(层叠 样式 表),描述每种内容的外观。你可以提供其他样式,或者用户可以使用他们自己的样式;只要你在语义上标记了你的元素,像“我希望标题很大”这样的规则就可以使用。
    • 如果将逻辑部分分解为 fieldsets 有一个 legend 对于每一个。盲人可以听到 传奇 发短信并决定,“哦,我可以跳过这一部分”,就像一个有远见的用户阅读它所做的那样。
    • 当手机看到 type="tel" (用于电话号码)。
        2
  •  20
  •   Jamie Dixon    15 年前

    语义基本上是指“意义的研究”。

    通常,当人们谈论的代码在语义上是正确的时,他们指的是那些刻意描述某些东西的代码。

    在(x)HTML中,有一些特定的标记赋予了它们所包含内容的意义。例如:

    h1标记将其包含的数据描述为一级标题。h2标记将其包含的数据描述为级别2标题。这背后隐含的含义是,h1下的每个h2在某种程度上是相关的(即标题和副标题)。

    当你用语义的方式编码时,你基本上给你描述的数据赋予了意义。

    考虑下面两个语义和非语义示例:

    <h1>Heading</h1>
    <h2>Subheading</h2>
    

    与非语义等价物相比:

    <p><strong>Heading</strong></p>
    <p><em>Subheading</em></p>
    

    有时你可能会听到人们在辩论中说“你现在只是在说语义学”,这通常指的是用不同的词表达与另一个人相同的意思的行为。

        3
  •  10
  •   cakeforcerberus    15 年前

    “元素在语义上的正确使用意味着您可以根据它们的用途来使用它们。这意味着您使用表来表示表格数据,而不是布局,这意味着您使用列表来列出内容,使用强和em来强调文本,等等。”

    来自: http://www.codingforums.com/archive/index.php/t-53165.html

        4
  •  2
  •   Kenan Banks    15 年前

    HTML元素有意义。”“语义正确”是指你的元素 意思是 他们应该做什么。

    例如,定义列表由 <dl> 代码中的列表,您的缩写是 <abbr>s 等。

        5
  •  1
  •   user151323    15 年前

    这意味着HTML元素在正确的上下文中使用(与用于设计目的的表不同),CSS类以人类可理解的方式命名,并且文档本身的结构可以由非浏览器客户端(如屏幕阅读器、试图从文档中提取信息及其结构的自动分析器)处理。NT等。

    例如,您可以使用列表来构建菜单。这样,残障人士的屏幕阅读器将知道这些列表项是同一菜单级别的一部分,因此它将按顺序读取这些列表项,供一个人做出选择。

        6
  •  0
  •   Thomas Owens    15 年前

    我从来没有在纯粹的CSS上下文中听到过它,但是当谈论CSS和HTML时,它意味着使用适当的标记(例如,避免对非表格式数据使用表标记),为类和ID提供适当的值,以标识包含的数据是什么(并使用 microformats 等等。

    这一切都是为了确保你的数据能被人理解(所有的东西都被正确地显示)和计算机(所有的东西都被正确地识别和标记)。