首先,我想告诉你为什么我问这个问题。我通常更新写得不好而没有重置的项目。我想提高项目的质量,因此似乎绝对需要应用CSS重置。
我不希望每次更改内容时都在每个浏览器中进行像素完美测试,我不想完全重写所有CSS。
所以:
当我写作时:
*{
margin:0;
padding:0;
border:0;
}
我知道会遇到什么麻烦:<p>
会松动填充,而<input>, <select>, etc.
会松开填充和边框。所以我必须手动指定它们。
此代码更难理解:
*{
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
我对此完全感到困惑:
body {
line-height: 1;
}
答案 0 :(得分:9)
*{
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
除非另有说明,否则默认情况下,将文档中的所有元素设置为从父元素继承字体和字体大小,这可以防止用户代理样式表应用具有较少特定规则的字体样式。
vertical-align: baseline;
是避免用户代理规则的另一个普遍规则,这些规则并不总是将此(我相信)预期的默认行为应用于所有元素。
以下简要介绍一下这一点:demo。在演示中,尝试将规则设置为middle
而不是文本顶部。
body {
line-height: 1;
}
这是一样的。如果你不熟悉行高,那很简单。您可能在没有意识到的情况下处理过它:有时它似乎是一个边际问题,实际上,元素的线高超出了您的预期。当您将字体放入与其他字体具有非常不同的x高度的设计中时,通常会发生这种情况。
如果您不理解其功能,请将一些虚拟文本放入文档并开始播放。在不同情况下制作好的排版非常有用(必不可少)。
似乎你不清楚css属性以及它们如何影响元素。您越了解这一点,您就越能利用重置。由于一些原因,没有重置真正适合所有。例如,您可能没有使用vertical-align
可能最终不匹配的任何元素。您可能在大型重置中有规则,适用于您甚至没有的元素。
与网页设计中的任何内容一样,如果您不理解它,实践经验会教会您很多。
答案 1 :(得分:3)