Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.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
Javascript 是否可以删除标题栏中显示的标题?_Javascript_Html_Css_Browser_Title - Fatal编程技术网

Javascript 是否可以删除标题栏中显示的标题?

Javascript 是否可以删除标题栏中显示的标题?,javascript,html,css,browser,title,Javascript,Html,Css,Browser,Title,有可能夺冠吗 <title><s>My Title</s></title> 我的标题 这样,标题栏就能显示我的标题了? 或者有没有办法用css解决这个问题?没有,我所知的浏览器都不支持直接在标题栏中呈现HTML,只会显示标记中的纯文本。您最希望做的就是使用一些晦涩的字符,其中行是每个字符的一部分-一些非常具体的字符,我不想调查这些字符。来源: HTML标题元素定义文档的标题, 显示在浏览器的标题栏或页面的选项卡上。它只能包含文本,任何包含的标记

有可能夺冠吗

<title><s>My Title</s></title>
我的标题
这样,标题栏就能显示我的标题了?
或者有没有办法用css解决这个问题?

没有,我所知的浏览器都不支持直接在标题栏中呈现HTML,只会显示
标记中的纯文本。您最希望做的就是使用一些晦涩的字符,其中行是每个字符的一部分-一些非常具体的字符,我不想调查这些字符。

来源:

HTML标题元素定义文档的标题, 显示在浏览器的标题栏或页面的选项卡上。它只能包含文本,任何包含的标记都不会被解释

所以不,不能这样做

更新:

其他答案建议使用unicode字符的各种组合来完成一个打孔,尽管这可能是可能的,并且可能会产生一个不错的结果,但我相信它有一个很大的缺点

我不是搜索引擎优化方面的专家,但据我所知,
在搜索引擎优化方面非常重要。他们的指南建议你应该避免:

  • 选择与页面内容无关的标题
  • 使用默认或模糊的标题,如“无标题”或“新页面1”

我的解释是,在标题中使用晦涩的字符将直接违反这一点,因此基于此,我强烈建议您避免使用。

恐怕这是不可能的。“title”标记不允许在其内容中使用任何形式的格式。

这是不可能的,您无法使用CSS控制浏览器窗口标题的
标记。

可以通过使用内置罢工的字符来实现。但这是唯一的办法。使用HTML标记或CSS不会产生您想要的结果


使用此示例:

浏览器允许通过两个选项自定义文档标题

  • Fav图标2。头衔
  • 任何带有标签或css的定制都将被忽略,标题上只显示文本和fav图标


    因此,如果您想围绕标题进行游戏,您仍然可以使用javascript,您可以创建可能适合您的动画。

    如果标题栏中显示
    标题
    元素内容,则无法更改其呈现方式。这并不取决于规范,而是取决于实现:浏览器使用自己的例程来显示标题,HTML标记或CSS设置不会影响这一点

    没有任何东西阻止我们将
    标题
    元素设置为这样的样式,例如

    title { text-decoration:line-through; }
    
    但这在默认情况下没有可见效果,因为元素不是显示的文档内容的一部分。添加

    head, title { display: block; }
    
    使其可见,并且您可以(在现代浏览器中)在页面上看到内容过于粗糙。但这并不影响标题栏(也不是特别有用)

    使用元素内容中的特殊字符,可以创建超链接,如其他答案所示。但是,这会造成相当大的混乱风险,因为浏览器用于显示标题栏的例程通常使用有限的字符集,显示不受支持的字符,例如小方框。

    您可以使用它们来添加它们。这在很大程度上取决于操作系统/浏览器在标题栏中使用的字体

    function strike(text) {
        var output = '';
        for (var i = 0; i < text.length; i++) {
            output += '\u0336' + text[i];
        }
        return output;
    }
    
    function strikeTitle() {
       document.title = strike(document.title);
    }
    
    函数罢工(文本){
    var输出=“”;
    对于(变量i=0;i

    编辑:就个人而言,我最喜欢\u0337。

    正确,尽管快速测试表明删除线在标题栏中看起来不太好,但这是唯一的方法。维基百科文章确定了可以生成删除线的确切Unicode字符。这种情况下最好的字符是
    U+0336组合长笔划叠加
    ,它看起来像这样:“A̶B̶C̶D̶e̶f̶g̶h̶i̶”。警告:在某些字体中,该字符看起来不像一个删除线,连续的字母高度不同。是的,但如果有人真的需要在标题中添加删除线,这是他们将得到的最接近的。我相信标题元素与搜索引擎和搜索引擎优化非常相关。我不知道这会有什么影响,但我的猜测是,从这个意义上讲,这不会是最优的。你是对的。例如,谷歌上的这个搜索没有粗体的删除部分,尽管它是搜索词之一。这应该是第二个结果:但正如我所说,这是为真正需要这个功能的人准备的。引用的文本并不排除CSS能够设计标题的可能性,这也是问题中所问的;该文本仅表示内联HTML不起作用。为了测试CSS是否有效,我用CSS
    title{text-decoration:line-through;}
    制作了一个JS容器。,表明CSS也不起作用()。@RoryO'Kane您的权利,该引用不排除CSS,但正如您已经证明的,CSS不能应用于title元素。我试图找到一个很好的参考,以排除CSS以及,但没有找到一个立即,不幸的是,我不能花更多的时间寻找一个。不过,你的例子也很好地证明了这一点。我添加了另一个答案,它可以满足你使用JavaScript提出的要求。