【问题标题】:How can I have a Blank Title Page?我怎样才能有一个空白的标题页?
【发布时间】:2014-06-26 16:48:28
【问题描述】:

我正在使用

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8"/>
    <script>document.title=" ";</script>
  </head>
</html>

它可以在 IE 和 Firefox 中运行,但 Chrome 不能运行。 好吧,在 W3C 标准中。好像不允许空白标题?!

用户代理在其用户界面中引用文档时应使用文档的标题。当以这种方式使用标题元素的内容时,应该使用该标题元素的方向性来设置用户界面中文档标题的方向性。

【问题讨论】:

    标签: html internet-explorer google-chrome firefox


    【解决方案1】:

    根据 HTML5 CR,title 元素是必需的,除非“文档是 iframe srcdoc 文档或标题信息可从更高级别的协议获得”(这在 head element 的描述中指定)。

    实际上,根据 HTML5 CR,可以通过分配给 document.title 来在 JavaScript 中设置标题。当然,这对于标题的许多重要用途来说是无效的,因为这只发生在浏览器中。

    HTML5 CR 还指定title element 不得为空或仅包含空格。更准确地说,内容必须是不是inter-element whitespace的文本。

    document.title的值没有相应的要求。然而,HTML5 规定在赋值时,前导和尾随空格被去除。如果你在赋值document.title = " "之后测试document.title的值,你会看到这个值是空字符串,而不是空格。

    浏览器对文档标题的处理方式不同(使用&lt;title&gt; 元素设置或通过分配给document.title)。他们可以在他们的用户界面中以各种方式显示它。如果标题设置为空字符串或根本没有设置,浏览器通常使用文档的文件名(可能以某种方式修改)代替标题。这就是发生的事情,例如在 Chrome、Firefox 和 IE(在 Windows 上)中,当它们将文档标题显示为选项卡的名称时。 (我不知道在 IE 和 Chrome 中设置标题空白“有效”是什么意思。)

    在大多数情况下,文档的空标题是没有意义的,就像出版没有名字的书一样。但是,如果您有一个想要制作标题的用例(如某些情况下的浏览器所示),您可以部署各种技巧。

    例如,根据定义,NO-BREAK SPACE U+00A0 在 HTML 中不是空格字符,因此您可以在 HTML 中使用 &lt;title&gt;&amp;nbsp;&lt;/title&gt; 或在 JavaScript 中使用 document.title='\u00A0'。然后标题看起来像空白,但从技术上讲它不是空的,因此它将用于浏览器。

    由于 NO-BREAK 仍然占用空间(它实际上是用一个字形显示,只是一个完全空白的字形),您可以使用 LEFT-TO-RIGHT MARK U+200E 代替;它是一个不可见的(零宽度)控制字符。在 HTML 中,您可以使用 &lt;title&gt;&amp;lrm;&lt;/title&gt;。或者,您可以在 JavaScript 中使用 document.title='\u200E'

    【讨论】:

    • 嗯,我的意思是在 IE 和 Firefox 中,脚本标题设置功能,但 Chrome 仍然在标题选项卡中显示文件名。我用 ‎ 试过你的样品这使得所有浏览器都带有空白标题:)。我了解 W3C 标准,只是偶尔在浏览器中发现不同的解析标题。
    • 还有一个问题。 \u200E 不在 ASCII 集中。它应该是 chraset wit 'us-ascii' 中的乱码;但是,所有浏览器都能正确转换它。为什么?
    • @Dotku, \u200E 由浏览器的 JavaScript 解释器根据 JavaScript 规则进行解析。然后将解析的字符包含在 DOM 中的字符串中。文档的字符编码在这里无关紧要;它只在 HTML 解析中很重要,这在 JavaScript 开始执行时已经发生了。
    • 目前在 Chrome 中有效 -   显示  不是空白
    【解决方案2】:

    chrome 76,macos 2019 年 5 月 13 日:

    <title>&lrm;</title>
    

    有效,这是一个没有标签标题的空 jekyll 页面的完整示例:

    ---
    layout: null
    ---
    
    <link href="http://localhostdotdev.com/favicon.ico" rel="icon" type="image/x-icon" />
    <title>&lrm;</title>
    <style>body { background-color: rgb(40, 44, 47) }</style>
    

    (也有一个空的图标和与 chrome 的深色模式相匹配的深色背景)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 2021-05-08
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多