在<title>标签内可以使用其他标签吗?

15

<title> 标签中使用其他标签是正确的做法或有效的语法吗?

多语言标题的示例

<html lang=en>
<title>Some title in English and a <i lang=fr>word in French</i></title>

有一个法语单词,也许?(抱歉,没有法语键盘,所以没有重音或带尾勾的字母。) - Neil
4个回答

21

1
我刚刚发现在<title>标签内部需要使用标记。Chrome使用notranslate类值作为不翻译内部文本的指示。如果您希望标题的某些部分不被翻译,可以这样做<title>关于 <p class=notranslate>品牌名称</p> 的页面</title>。不幸的是,它不起作用。您可以防止整个标题被翻译或者全部翻译,但不能部分翻译。 - GetFree

2

0
简而言之: <title> 标签必须包含文本(1)(不能是空的),(2)只能包含文本(即没有其他元素),并且(3)必须包含不仅仅是空格的文本。

在HTML 5中, title元素的内容模型为:

非元素间空白文本。

元素间空白文本是指任何仅包含空格字符序列或为空的文本节点:

  • U+0020 空格
  • U+0009 制表符(tab)
  • U+000A 换行符(LF)
  • U+000C 换页符(FF)
  • U+000D 回车符(CR)

0

你可以尝试使用任何你想要的东西,但它们都将被用作标题字符串,浏览器不会进行任何额外的解析/处理(如果这是你期望的)。RFC规定你必须避免在标题中放置标记。


不,这样行不通。那里没有识别任何标记,因此例如 <i lang=fr> 这一部分将会在使用 title 元素内容的上下文中以字面形式出现,比如标签页标签。 - Jukka K. Korpela
1
@JukkaK.Korpela 这是我写的内容。请再次阅读我的评论。您会发现您的标记在页面标题上(通常在浏览器窗口标题上)未经处理。 - Marcin Orlowski
1
你写道“它将起作用”。但实际上不会,因为其明显目的是将某些单词标记为法语,而不是让<i lang=fr>出现。(RFC的引用也不相关;最后且唯一在RFC中定义的HTML版本是HTML 2.0。) - Jukka K. Korpela
1
@JukkaK.Korpela,但是在前面的句子中我说它将被用作普通字符串而不是解析。无论如何,我已经编辑了我的答案。 - Marcin Orlowski

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接