代码之家  ›  专栏  ›  技术社区  ›  Agnel Kurian

为什么根据VS2008,元素<u>被认为过时?

  •  7
  • Agnel Kurian  · 技术社区  · 15 年前

    使用<u>元素时,为什么在Visual Studio中收到以下消息?

    “元素“u”被认为过时。一 建议使用较新的结构”

    它老化了吗?

    9 回复  |  直到 15 年前
        1
  •  21
  •   Chait scrthq    8 年前

    自HTML4起,underline标记已被弃用。可以找到W3C引用 here . 原因是视觉样式不属于标记,而是应该移动到样式表中。

    你可以使用 text-decoration: underline 风格代替:

    <span style="text-decoration: underline">some underlined text</span>
    

    要删除下划线,请使用 text-decoration:none 禁用下划线。

        2
  •  10
  •   Daniel Rikowski    15 年前

    这是因为W3C决定否决它。

    这是因为所有的布局和设计都应该使用CSS完成。最好只在HTML中 结构 应该存在。

    <u> 只在文本中添加特定的字体装饰,但没有结构信息。

        3
  •  8
  •   redsquare    15 年前

    因为根据W3C已经贬值了。读 here 同样,任何样式/格式都应该由CSS负责,但我确信vs遵循W3C的指导原则。

        4
  •  4
  •   Neil Aitken    15 年前

    标记与其他文本格式/样式元素一起被弃用。

    “in”要做的是使用正确的标记并将样式表应用于样式表。

        5
  •  1
  •   Sam DeFabbia-Kane    15 年前

    正如其他人所说,在最新版本的Web标准中,<u>(和类似元素)已被弃用,因为人们普遍认为样式和标记应该分开。

    而且,正如其他人所说,您可以通过使用具有内联样式的跨度来使HTML有效。但事实上,这也没什么好。有效吗?对。但它一开始只是简单地使用<U>标签就不会给您带来其他任何好处。

    最好的语义解决方案取决于上下文。为什么要在文本中插入下划线?我可以想到三个用例:标题、链接和文本强调。在每种情况下,您都应该将样式表中的CSS应用于相关的语义元素:<h1-6>用于标题,<a>用于链接,以及<em>用于强调的文本。如果您需要每个的变体,请根据需要应用CSS类和ID。

        6
  •  0
  •   nilamo    15 年前

    <u>是已弃用的元素系列的一部分。<b>和<i>分别替换为<strong>和<em>,同时需要使用CSS才能生效。

    其原因是HTML不应该决定某个内容是加下划线或加粗的,该类型的信息应该是样式的一部分,因此是样式表的完美候选。

        7
  •  0
  •   billyswong    15 年前

    不仅仅是HTML4, <u> 被认为是过时的 HTML5 也是。

    有趣的是, <b> <i> 保持一致。你可以尝试在他们的邮件列表中争论,或者继续使用你以前喜欢的标签。浏览器不会退出它的支持,您也很好。

    我记得决定拉车的原因 <U & GT; 它缺乏统一的语义或类似的含义。至少当你看到粗体字的时候你知道你应该读它 大声点 .

        8
  •  0
  •   davidWazy    10 年前

    那里 可以是 这意味着在“u”标记上的css引用将在一定程度上丢失。

    一个微小但令人恼火的结果是输入控件的访问键。

    <u>F</u>irst Name <input ... AccessKey="f"..
    

    <span class="ul">F</span>irst Name
    

    第一个方法,使用一个标记,真正地表明了一个随机的、用户分配的类名没有的意义。标记是固定的-类名是任意的。

    就标准而言,这是一个没有区别的区别。这个决定是武断的、主观的和反复无常的,是从假定的 专家 纯粹主义者 .

        9
  •  -5
  •   Coding With Style    15 年前

    如今,用HTML而不是CSS格式化被认为是不受欢迎的。无论如何,如果您在标准符合性方面遇到问题拒绝您的内嵌格式,请遵循以下简单搜索和替换规则:

    <b & gt;& lt;/b& gt; 替换为 <span style=font-weight:bold></span>
    <U & gt;& lt;/u & gt; 替换为 <span style=text-decoration:下划线></span>
    <I & gt;& lt;/i & gt; 替换为 <span style=text字体样式:italic></span>
    <FONT face=FONT,OtherFONT SIZE=number></FONT> 替换为 <span style=font-family:字体,其他字体;字体大小:替换为关键字></span>
    <S> & L./S> 阿卡 <罢工></strike> 替换为 <span style=text-decoration:line-through></span>

    字体大小关键字:x x small,x-small,small,medium,large,x-large,x x large
    大致相同。

    如果你只需按照这些简单的替换,你就会体验到…!

    • 遵守标准的所有乐趣!(吹牛的权利。)
    • 没有任何好处。(此CSS不会从单个<样式>进行修改。)
    • 过度标准化带来的所有痛苦(请稍候,此</span>标记是否再次撤消?该死的。)
    • 更多带宽消耗!(进步的代价,只要有人告诉我这对我有什么帮助。)
    • 减少了浏览器支持!(你知道那些仍然使用旧浏览器或极简浏览器的人,比如 猞猁 , 链接 , W3M , 旁白 等等?嗯…谁在乎?)

    哦,是的…

    补遗 :更严重的是,因为现在许多标准纯粹主义者对纯粹的CSS都很难理解。避免常规标记的CSS背后的大多数支持都是从它的现代性中产生的,所以您应该与时俱进。其他的支持来自这样一个概念:CSS本质上更易于维护,并且完全忽略了像我上面建议的那样无法维护的混乱。

    不是我有什么反对CSS的。这里的要点是,很多人过度宣扬标准,即使标准被用在非常不恰当的方式上,也会宽恕它。正如我所提到的,用内嵌格式的CSS替换常规HTML标记的概念被很多CSS倡导者视为真正的进步。他们似乎认为,坚持标准、模式、设计规则,是某种内在的好东西,而不是理性地看待它。内联格式有它的位置,我认为使用常规的HTML标记是合适的,而且可读性更高。

    那些信徒就像那些告诉你哥特人是邪恶的人,你永远不应该使用他们。这些人将看到一个规则的堆栈式的风和放松,而不是使用缩进的if语句进行十层缩进和重复的代码深度。而且,他们会真诚地将自己的版本视为更具可读性和可维护性,即使按照任何健全的标准,它显然不是这样的。 http://kerneltrap.org/node/553/2131