【问题标题】:why does "<" throw an error inside a button, but not ">"?为什么“<”会在按钮内引发错误,而不是“>”?
【发布时间】:2021-08-04 06:07:18
【问题描述】:

我有两个用于滚动的按钮,仅由按钮内的文本制成:

<div class="trend-header scroll"> 
    <button type="button" onclick="scrollButtonClick(0)" > < </button>
    <button type="button" onclick="scrollButtonClick(1)" > > </button>
</div>

第一个引发“XML 格式错误”。我在芬兰语中遇到错误,但我很确定这是直接翻译。问题很可能是我的按钮内的“

如果重要的话,这是我的 CSS 吗?

.trend-header {
    width: 100%;
    height: 60px;
    vertical-align: middle; 
}

.trend-header.scroll {
    float: left;
    width: 300px;
    font-size: 28px;
    font-weight: bold;
    vertical-align: middle; 
    margin-left: 20px;
}

【问题讨论】:

  • &amp;lt; 可以是 html 元素的开头。使用&amp;lt;&amp;gt;

标签: html xml button


【解决方案1】:

&amp;lt; 在 XML 和 HTML 中具有特殊的含义。解析器现在希望您提供一个元素名称(就像您之前使用例如 &lt;button 所做的那样)。

如果您想改为编码文字 &amp;lt;,请使用 &amp;lt;。虽然不太经常被误传,但要获得正确的 XML,请使用 &amp;gt; 代替 &gt;,并使用 &amp;amp; 代替 &amp;

在其他情况下,您可能需要其他转义;有关详细信息,请参阅 this 之类的内容。通常,您正在寻找字符转义。

【讨论】:

    【解决方案2】:

    至于您的标题问题,XML 始终需要对&amp;lt; 进行转义(如&amp;lt;),因此它不会误认为是开始或结束标记的开头,但&gt; 只需要在特定情况下进行转义,尤其是当它是序列]]&gt; 的一部分时。

    【讨论】:

      猜你喜欢
      • 2021-05-17
      • 1970-01-01
      • 2013-04-04
      • 2011-05-08
      • 2014-01-04
      • 2014-12-11
      • 2023-03-07
      • 1970-01-01
      • 2010-10-22
      相关资源
      最近更新 更多