Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 刚刚注意到`<;i/>;`Twitter上的标签,是他们编造的吗?_Html_Css_Twitter_Css Sprites - Fatal编程技术网

Html 刚刚注意到`<;i/>;`Twitter上的标签,是他们编造的吗?

Html 刚刚注意到`<;i/>;`Twitter上的标签,是他们编造的吗?,html,css,twitter,css-sprites,Html,Css,Twitter,Css Sprites,Twitter似乎在使用标签来显示css精灵中的图标。是他们自己编的标签,还是我从没听说过的HTML 无论如何,这是个好主意:)那是斜体标记。不,.那是常规的斜体标记,但没有任何内容;i、 e.它在语义上等同于† 在中,空元素在末尾用额外的斜杠写入。是有效的XML。所以很好。对于一个更常见的例子,请考虑例如 要亲自查看是否是有效的XHTML标记,请检查或将以下内容传递给: †正如正确指出的,句法差异在某些情况下是相关的。尽管浏览器可能不会处理与不同的,但其他XML解析器可以 他们可能正在

Twitter似乎在使用
标签来显示css精灵中的图标。是他们自己编的标签,还是我从没听说过的HTML


无论如何,这是个好主意:)

那是斜体标记。

不,.

那是常规的斜体标记,但没有任何内容;i、 e.它在语义上等同于

在中,空元素在末尾用额外的斜杠写入。是有效的XML。所以
很好。对于一个更常见的例子,请考虑例如

要亲自查看
是否是有效的XHTML标记,请检查或将以下内容传递给:




†正如正确指出的,句法差异在某些情况下是相关的。尽管浏览器可能不会处理与
不同的
,但其他XML解析器可以

他们可能正在使用它来减少HTTP负载,即带宽成本。

我看到人们使用面向空样式的元素(例如,
)作为钩子,为整个站点重用的UI小部件提供额外的样式。例如,基本模块的结构定义为

<div class="mod"> 
  <b class="top"><b class="tl"></b><b class="tr"></b></b>
  <div class="inner">
    <div class="bd">
      <p>Lorem ipsum.</p>
    </div>
  </div>
  <b class="bottom"><b class="bl"></b><b class="br"></b></b> 
</div>

同侧眼线

然后,根据您的CSS(以及您使用模块的上下文),这些空的
元素可能会接收样式以添加例如边框图像,或者它们可能根本不会接收样式,并且对页面没有影响


我找不到你提到的标签,所以我不知道这是否是Twitter正在做的事情,但是不管怎样,使用这些标签都很有趣。

使用
i
而不是
span
可以节省一些字节

我想问题是,作为一个无内容标签,它是如何合法的?它看起来好像没有斜体化任何文本。你在twitter上谈论什么?我看不出来。。。您可以发布源代码的一个片段吗?如果带宽成本是指减少客户端许多http请求的性能损失。即使对这样一个网站来说,带宽成本也不会降低很多。假设这项技术每页使用两次。每个页面视图可节省58字节。Twitter每月收到约15亿页的浏览量。这意味着每月可节省81 GB的带宽。现在,单凭这一点对twitter来说并不算什么,但类似的全面优化可以大大节约成本。但我愿意接受你对其原理的推测。不,这不是等价的!在许多情况下,它们将被同等对待,因此在大多数情况下,它们在功能上是等效的。任何像样的XML解析器都允许您检测空元素()和内容长度为0的元素()之间的差异,此时实现可能会对它们进行不同的处理。简单地说,因为大多数人并不表示他们是相同的。很抱歉对一个技术性问题大发牢骚,但应该加以区分@东芝:你很正确地指出了句法对等和语义对等之间的区别。我将更新答案以反映这一点。实际上,XML规范中没有任何内容表明这两种结构是不同的:和。事实上,在带注释的XML规范()中,Tim Bray说,“那么,这是真的吗?就XML而言,它们是完全相同的。”如果XML解析器让您看到区别,它类似于让您知道属性是否包含在单引号和双引号中。这不是区别,而是琐事。@Ned:就XML标准而言,
不应该区别对待吗?或者事实上,它们不能被区别对待,这意味着任何这样做的解析器都违反了标准?(当然,我同意将不同的语义归于
是愚蠢的;我只是想了解XML规范在这方面有多严格。)@Stephan202。相关的段落(来自XML规范的第3.1节)没有用这些术语来描述。它所说的是“[定义:一个没有内容的元素被称为空的。]一个空元素的表示形式要么是紧跟着一个结束标记的开始标记,要么是一个空元素标记……空元素标记可以用于任何没有内容的元素,不管它是否使用关键字empty”+1,但不要把这当作一个建议去做同样的事情。当你的带宽和Twitter一样大时,每个页面负载减少几个字节会产生很大的差异,所以这种技巧是有意义的,但是我们其他人应该坚持用传统的语义编写HTML代码。
<div class="mod"> 
  <b class="top"><b class="tl"></b><b class="tr"></b></b>
  <div class="inner">
    <div class="bd">
      <p>Lorem ipsum.</p>
    </div>
  </div>
  <b class="bottom"><b class="bl"></b><b class="br"></b></b> 
</div>