我有一个带有某些样式的简单html页面,但我不明白为什么会增加一些顶部边距?
来源如下:
<!doctype html> <html> <head> <title></title> <style type="text/css"> body { margin: 0; padding: 0; background-color: #ffffcc; } #content { width: 900px; margin-left: auto; margin-right: auto; border: 0; background-color: #ccccff; } </style> </head> <body> <div id="content"> <div> <ul> <li><a href="./xxx.html">xxx</a> </li> <li><a href="./yyy.html">yyy</a> </li> <li><a href="./zzzz.html">zzz</a> </li> </ul> </div> </div> </body> </html>
如果我添加“ margin-top:0;” 到了空间已经消失了……但是直到我明白为什么我才感到不高兴。
上的空白<ul>来自浏览器添加到元素的默认样式。例如,如果您打开Chrome的DevTools并检查<ul>元素,您将看到这样的样式。该用户代理样式表是指浏览器默认样式。1em保证金变成16px为浏览器有一个font-size: 16px默认。
<ul>
Chrome
DevTools
1em
font-size: 16px
由于浏览器之间的默认样式不同,一种常见的技术是使用重置样式表,例如Eric Meyer的ResetCSS或Nicolas Gallagher的normalize.css,以减少这些浏览器不一致的情况。
Eric Meyer
ResetCSS
Nicolas Gallagher
normalize.css