"document.write"不起作用的字体属性



我的HTML文档包括

<font face="helvetica"> (and of course </font> later)

这很好用,一切都在赫尔维蒂卡。
但是,有一个JavaScript部分,

if (d > 5) {
    document.write('Message');
}

并且由此产生的文本不是所需的字体。
我尝试了将样式应用于它的方法,但它根本不显示 JS 部分,如何使其以与 HTML 相同的字体显示?
是否有可以使整个文档使用相同的字体的 HTML 标记?

首先,停止使用 <font> .现在已经不是90年代了。

动态内容不是您想要的字体的(最可能的)原因是document.write()将内容放在标签之外。查看生成的 HTML 以确认这一点。此示例显示当 JavaScript 放置在标记内时,内容的样式正确。

但是,正如Kolink的答案所示,如果要更改文档的默认字体,则应使用CSS来设置文档<body>样式。


查看您在注释中的示例,看起来您正在使用 jQuery - 现在避免document.write()应该是微不足道的(无论如何您都应该避免)。

document.write()替换为:

$( 'body' ).append( 'Message' );

或者,如果要设置消息样式:

$( 'body' ).append( '<div class="message">Message</div>' );

并为邮件类添加 CSS 规则(例如 .message { font-weight:bold; } )。

请参阅 http://jsfiddle.net/sE8DS/6/。

CSS:

body {font-family: "helvetica", sans-serif;}

做。不需要古老的<font>标签。

使用 CSS,font 标签很久以前就被弃用了:

html {
    font-family: 'Helvetica';
}

而且document.write()也被认为是不好的做法。

请改用这个:

.HTML:

<html>
    <body>
        <div id="helvetica"></div>
    </body>
</html>

.CSS:

#helvetica {
    font-family: 'Helvetica'
}

Javascript:

var helvetica = document.getElementById("helvetica");
helvetica.innerHTML = "Message";

最新更新