Kev*_*her 95
像这样:
var root = document.getElementsByTagName( 'html' )[0]; // '0' to assign the first (and only `HTML` tag)
root.setAttribute( 'class', 'myCssClass' );
Run Code Online (Sandbox Code Playgroud)
或者使用它作为"setter"行来保留以前应用的任何类:(感谢@ ama2)
root.className += ' myCssClass';
Run Code Online (Sandbox Code Playgroud)
或者,根据所需的浏览器支持,您可以使用以下classList.add()方法:
root.classList.add('myCssClass');
Run Code Online (Sandbox Code Playgroud)
https://developer.mozilla.org/en-US/docs/Web/API/Element/classList http://caniuse.com/#feat=classlist
更新:
用于引用HTML元素的更优雅的解决方案可能是:
var root = document.documentElement;
root.className += ' myCssClass';
// ... or:
// root.classList.add('myCssClass');
//
Run Code Online (Sandbox Code Playgroud)
c24*_*24w 12
这应该也有效:
document.documentElement.className = 'myClass';
Run Code Online (Sandbox Code Playgroud)
兼容性.
编辑:
IE 10认为它是只读的; 然而:

歌剧作品:

我也可以确认它适用于:
aeb*_*old 11
我建议你看一下jQuery.
jQuery方式:
$("html").addClass("myClass");
Run Code Online (Sandbox Code Playgroud)
你应该追加类不要覆盖它
var headCSS = document.getElementsByTagName("html")[0].getAttribute("class") || "";
document.getElementsByTagName("html")[0].setAttribute("class",headCSS +"foo");
Run Code Online (Sandbox Code Playgroud)
我仍然建议使用jQuery来避免浏览器不兼容
document.documentElement.classList.add('myCssClass');
Run Code Online (Sandbox Code Playgroud)
classList自ie10开始受支持:https://caniuse.com/#search=classlist