gpt4 book ai didi

html - 以绝对位置将 Div 置于中心的更好方法?

转载 作者:太空宇宙 更新时间:2023-11-03 18:01:02 24 4
gpt4 key购买 nike

这就是我想做的

我想要一个 z-index -1 的 div,位于其他 2 个 div 之间的某处,以测试其上的视差效果,我将所有内容都放在中心,边距为:0 auto。但是当我将视差 div 位置更改为绝对位置时,它移到了页面的左侧。接下来,我尝试将它移回中心,左 :50% 它没有用,所以我将它改为左 :12.5% 并且它起作用了!

但这是我的问题:我可以用任何其他方式做到这一点吗?!我现在做的是对的还是会在未来造成一些问题?!

代码如下:

HTML :

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Meaningless Pap</title>
<link rel="stylesheet" href="style.css">

</head>

<body>
<div class="container">
<div class="content1">
<h1>Welcome! </h1>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>

<div class="breaker" data-0="background-position:0px 0px;" data-700="background-position:0px -300px;">
<h2> this is a text </h2>
</div>

<div class="content2">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>

</div>
<script type="text/javascript" src="skrollr.min.js"></script>
<script type="text/javascript">
skrollr.init();
</script>
</body>

</html>

样式:

body {
font-family: 'lato';
background: url("http://habrastorage.org/files/90a/010/3e8/90a0103e8ec749c4843ffdd8697b10e2.jpg") #000;
background-size: cover;
background-position: center;
background-attachment: fixed;
font-size: 100%;
line-height: 1.7;
color: #000;
}

.container {
width: 100%;
margin: 0 auto;
}

.content1 {
position: relative;
background: #fff;
width: 75%;
margin: 0 auto;
border-radius: 5px;
border: 1px solid #000;
box-shadow: 0px 7px 15px #333;
padding: 10px;
z-index: 1;

}

.content2 {
position: relative;
background: #fff;
width: 75%;
margin: 0 auto;
border-radius: 5px;
border: 1px solid #000;
box-shadow: 0px -7px 15px #333;
padding: 10px;
z-index: 1;
margin-top: 200px;
}


.breaker {
position: absolute;
left: 12.5%;
width: 75%;
height: 250px;
background: url('bg.jpg');
z-index: -1;
}

.breaker h2 {
padding-top: 50px;
text-align: center;
color: #fff;
}

最佳答案

您的方法没有任何问题。绝对定位时,宽度百分比和左侧百分比的计算方式相同 - 相对于 first parent element that has a position other than static .

绝对定位元素的另一种方法是同时指定左侧和右侧位置。这样做的好处是不受任何边框或填充的影响。

.breaker {
position: absolute;
left: 12.5%;
right: 12.5%;
height: 250px;
background: url('bg.jpg');
z-index: -1;
}

关于html - 以绝对位置将 Div 置于中心的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25475071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com