初学者在编写html代码并进行调试的过程中,可能会困惑于这种情况:
<!DOCTYPE html>
<head>
<style>
div {
width: 100%;
margin: 0px;
background-color: pink;
}
</style>
</head>
<body>
<div id="app">
我是div
</div>
</body>
</html>
我们在给特定的元素设置样式时,即使设置的宽度为100%,外边距设置为0 ,这个元素的宽度也依然无法填充整个页面,并且与网页的顶部也有一定间隙。
这是因为,body元素的margin属性的默认值为8px,即外边距为8个像素。
这就导致了body下的所有子元素即使宽度、高度都设置成100%,都无法填充整个网页。
为了解决这一问题,我们通常要创建一个reset.css文件,对元素的默认值进行重新设置:
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
text-decoration: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
然后在往后编写的每一个html代码时,都使用link标签与reset.css进行关联。
<!DOCTYPE html>
<head>
<link rel="stylesheet" href="./reset.css" type="text/css">
<style>
div {
width: 100%;
margin: 0px;
padding: 0px;
background-color: pink;
}
</style>
</head>
<body>
<div id="app">
我是div
</div>
</body>
</html>
这样一来,就可以实现默认值的重置了。