html - 我的元素的边距来自哪里?
问题描述
因此,我正在尝试为我的网站构建基本布局,但遇到了问题。问题是我无法弄清楚它们来自哪里的一些利润。
索引.html:
<!DOCTYPE html>
<html lang="en">
<head>
<link href="/css/style.css?v=0.1" type="text/css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Noto+Serif|PT+Serif" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8">
<link rel="icon" href="/images/favicon.png" type="image/png">
</head>
<body>
<div class="wrapper">
<div class="sidebar">
<p>sidebar</p>
</div>
<div class="main">
<p>main</p>
</div>
</div>
</body>
</html>
样式.css:
/* set defaults */
html, body, div {
background-color: white; /* Was #eee or #ccc */
/*font-size: 16px;*/
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
color: white;
font-family: 'PT Serif', serif;
/*font-family: 'Noto Serif', serif;*/
box-sizing: border-box;
}
.wrapper {
width: 100%;
max-width: 1200px;
height: auto;
padding: 0;
margin: 0;
border: 0;
outline: 0;
}
.main {
width: 80%;
height: 100px;
color: white;
margin: 0;
padding: 0;
border: 0;
outline: 0;
background-color: black;
display: inline-block;
}
.sidebar {
width: 20%;
height: 100px;
color: black;
margin: 0;
padding: 0;
border: 0;
outline: 0;
background-color: lightgrey;
display: inline-block;
}
p {
margin: 0;
padding: 0;
}
因此,当我如图所示呈现页面时,我得到:
但是当我将侧边栏的宽度设置为 19% 时,我得到:
如您所见,我在两个元素的右侧都有一些边距。我不知道这是从哪里来的,检查员告诉我我没有利润!边距、填充、边框和轮廓都设置为零,所以我不知道这是从哪里来的。有什么我想念的吗?
编辑:我应该说我正在尝试让元素在不换行的情况下彼此相邻显示。
解决方案
实际上,当您有两个具有width:19%
和width:80%
的元素时,您并没有遇到边距问题,其余width:1%
的则得到您提到的边距差距。
只需将float:left;
两者设置为避免保证金问题的类别sidebar
。main
无需更改width
.
html,
body,
div {
background-color: white;
/* Was #eee or #ccc */
/*font-size: 16px;*/
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
color: white;
font-family: 'PT Serif', serif;
/*font-family: 'Noto Serif', serif;*/
box-sizing: border-box;
}
.wrapper {
width: 100%;
max-width: 1200px;
height: auto;
padding: 0;
margin: 0;
border: 0;
outline: 0;
}
.main {
width: 80%;
height: 100px;
color: white;
margin: 0;
padding: 0;
border: 0;
outline: 0;
background-color: black;
display: inline-block;
float: left;
}
.sidebar {
width: 20%;
height: 100px;
color: black;
margin: 0;
padding: 0;
border: 0;
outline: 0;
background-color: lightgrey;
display: inline-block;
float: left;
}
p {
margin: 0;
padding: 0;
}
<!DOCTYPE html>
<html lang="en">
<head>
<link href="/css/style.css?v=0.1" type="text/css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Noto+Serif|PT+Serif" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8">
<link rel="icon" href="/images/favicon.png" type="image/png">
</head>
<body>
<div class="wrapper">
<div class="sidebar">
<p>sidebar</p>
</div>
<div class="main">
<p>main</p>
</div>
</div>
</body>
</html>
推荐阅读
- javascript - 用于验证用户名的正则表达式
- javascript - 我如何使用 Discord 机器人解除对人的禁令?
- pandas - 熊猫根据条件排名
- opencv - 安装后如何最小化opencv构建?
- prolog - HiLog 是否添加了 Prolog 中“调用”无法完成的任何操作?
- sql-server - TSQL:我有一个基本的查询问题 qr
- firebase - Firebase 规则字符串替换
- c - 为什么sctp_inet_listen的第一个参数是struct socket*而不是int
- python - 如何防止 QComboBox 显示不必要的滚动条
- css - 在 ul 中设置 Img 的纵横比