流畅地将 <div> 居中 <body>
Centering a <div> in <body> fluidly
我想在我的 <body>
中有一个 <div>
,它占页面宽度和高度的 95%。我希望此 <div>
在所有边上都居中,这样 <div>
的所有边上都存在 2.5% 的边距。附加代码几乎可以工作,但顶部没有边距,因此 <div>
一直延伸到页面顶部。我正在使用重置。任何人都可以提供一些关于为什么这没有按预期工作的见解吗?
这里对我来说最重要的是我对使用非相对测量没有兴趣。我有 Android 开发背景,我相信我所做的任何事情都应该缩放到(几乎)任何屏幕尺寸。
我还想说一下,我刚刚开始使用 HTML/CSS/JS,目前无意支持不符合 W3C 标准(IE)的浏览器。此外,我想避免任何看起来像黑客攻击或解决方法的事情。
CSS 重置如果您感兴趣:http://79.170.44.85/rasmussenprojects.com/reset.css
硬拷贝我只能post 1 link 看来最好link重新设置:
<!doctype html>
<html>
<head>
<title>Home</title>
<meta charset="utf-8" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<style>
html, body{
background-color:rgb(25,25,25);
height:100%;
width:100%;
}
.content-panel{
background-color:rgb(50,50,50);
width:95%;
height:95%;
margin:auto;
}
</style>
</head>
<body>
<div class="content-panel">
</div>
</body>
</html>
div{
background: lightgray;
bottom: 0;
height: 95%;
left: 0;
margin: auto;
position: absolute;
top: 0;
right: 0;
width: 95%;
}
<div>
content
</div>
我的看法是,您只需给 body 一个 padding: 2.5%
(并且不要忘记 position:relative
)。
div 然后应该用 position:absolute;top:0;right:0;bottom:0;left:0;
填充所有可用的 space
一般来说,我也会使用 box-sizing:border-box
我想在我的 <body>
中有一个 <div>
,它占页面宽度和高度的 95%。我希望此 <div>
在所有边上都居中,这样 <div>
的所有边上都存在 2.5% 的边距。附加代码几乎可以工作,但顶部没有边距,因此 <div>
一直延伸到页面顶部。我正在使用重置。任何人都可以提供一些关于为什么这没有按预期工作的见解吗?
这里对我来说最重要的是我对使用非相对测量没有兴趣。我有 Android 开发背景,我相信我所做的任何事情都应该缩放到(几乎)任何屏幕尺寸。
我还想说一下,我刚刚开始使用 HTML/CSS/JS,目前无意支持不符合 W3C 标准(IE)的浏览器。此外,我想避免任何看起来像黑客攻击或解决方法的事情。
CSS 重置如果您感兴趣:http://79.170.44.85/rasmussenprojects.com/reset.css
硬拷贝我只能post 1 link 看来最好link重新设置:
<!doctype html>
<html>
<head>
<title>Home</title>
<meta charset="utf-8" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<style>
html, body{
background-color:rgb(25,25,25);
height:100%;
width:100%;
}
.content-panel{
background-color:rgb(50,50,50);
width:95%;
height:95%;
margin:auto;
}
</style>
</head>
<body>
<div class="content-panel">
</div>
</body>
</html>
div{
background: lightgray;
bottom: 0;
height: 95%;
left: 0;
margin: auto;
position: absolute;
top: 0;
right: 0;
width: 95%;
}
<div>
content
</div>
我的看法是,您只需给 body 一个 padding: 2.5%
(并且不要忘记 position:relative
)。
div 然后应该用 position:absolute;top:0;right:0;bottom:0;left:0;
一般来说,我也会使用 box-sizing:border-box