<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box1{
width: 200px;
height: 200px;
border: 1px solid black;
}
</style>
</head>
<body>
<div class="box1"></div>
</body>
</html>
从显示可以看到,border的上方有间隙,但我并没设置。
看另一个代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box1{
width: 200px;
height: 200px;
border: 1px solid black;
}
</style>
</head>
<body>
<div class="box1"></div>
<p>我是段落</p>
<p>我是段落</p>
<p>我是段落</p>
<p>我是段落</p>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</body>
</html>
你看,这些都不是我们设置的,但是却有。
这些是浏览器的默认样式,会影响我们的布局。所以我们要去除默认样式。
F12打开看看,这些是设置了哪些。
从上图可以看到box1的上方和左边是body的margin。
从上图可以看到,段落的margin也有默认值。继续看ul。
从上图可以看到,ul不仅有margin还有padding默认值。
知道了问题后,我们可以认为设置它。
手动一个个改
body{
margin:0px;
}
p{
margin:0px;
}
ul{
margin: 0px;
padding:20px
}
细心的小伙伴可能发现了我给ul的padding设置了20px,这是为了显示那个黑点。如果我们不需要黑点,可以用如下代码去除它。
list-style: none;
前面的方法有点麻烦,因为我们得考虑所有有默认样式的标签。
最简单做法
*{
margin: 0;
padding: 0;
}
写上这个代码后就可以的,但是这个会有一些标签去除不了,所以得再找个方法。
重置样式表
拿一些别人写好的重置样式表
在head里写这句代码(前提是你有相应的reset.css文件,这文件不是我的,我就不给了自己百度下载)
<link rel="stylesheet" href="./css/reset.css">
当我们换另一个样式表时,则还有一些样式。
<link rel="stylesheet" href="./css/normalize.css">
这就是这两个默认样式表的区别
reset:全部去除
normalize:全部统一