显示和编辑样式元素

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200美元免费额度!

今天给大家带来一个小技巧。您知道可以在HTML的<head>中放置<style>块来进行样式设置吗?实际上,您不必将它们放在头部,它们可以位于页面上的任何位置。

更重要的是,它就像任何其他元素一样。所有浏览器的默认样式表将其设置为display: none;

如果您将其移到body中并将其重置为display: block;,您可以看到应用于该页面的代码。不妨让它看起来更像代码吧?

body style {
	display: block;
	background: #333;
	color: white;
	font: 13px/1.8 Monaco, Mono-Space;
	padding: 20px;
	white-space: pre;
}

更重要的是,您可以赋予它HTML5属性contenteditable,并且您可以直接在其中编辑CSS并观察它对页面的影响。

<style scoped contenteditable>body { 
  background: green; 
}</style>

查看演示

这就是CSS形状页面上所有代码的实现方式。它不仅很简洁,而且在这样的页面上非常有用,因此您不必在两个地方维护CSS。

我认为这在一般情况下不是一个很好的实践,除了CSS演示之外。我甚至可以说,<style>块通常是不好的做法,除非是像注入样式是向新注入的第三方内容添加样式的最有效方式这样的非常具体的第三方场景。

另外,需要说明的是,在<head>之外使用<style>只要您使用scoped属性并且它是其父元素的第一个子元素,则它是有效的。否则无效。scoped属性(尽管目前在任何浏览器中都不支持)应该意味着其中的样式仅应用于该父元素及其子元素,而不在其他地方。 了解更多信息