gpt4 book ai didi

html - 将元素扩展到容器之外,但将子元素保留在容器内

转载 作者:行者123 更新时间:2023-11-28 05:28:59 25 4
gpt4 key购买 nike

我最近遇到了一个问题,我想将所有内容保留在父容器中,但我希望导航背景为页面宽度的 100%。我尝试过的方法在使导航成为页面宽度的 100% 方面发挥了作用,但现在内部的 ul 不受容器的影响,这正是我最初想要的。

我通过在导航中使用另一个容器 div 使其工作,但我觉得这是一种非常权宜之计的方法。

关于如何让父容器影响 nav 内的 ul 有什么建议吗?

HTML:

<div class="container">
<nav class="menu">
<div class="container">
<ul>
<li><a href="#view1">HOME</a></li>
<li><a href="#view2">ABOUT ME</a></li>
<li><a href="#view3">SERVICES</a></li>
<li><a href="#view4">CURRENT PROJECT</a></li>
<li><a href="#view5">PORTFOLIO</a></li>
<li><a href="#view6">CONTACT ME</a></li>
</ul>
</div>
</nav>
</div>

CSS:

.container {
margin: 0 auto;
width: 1200px;
}

.menu {
left: 0;
right: 0;
height: 80px;
position: fixed;
background-color: rgb(33, 33, 33);
}

.menu ul {
padding: 0;
margin: 0;
color: #fff;
list-style: none;
font-weight: bold;
height: 80px;
float: right;
}

.menu ul li {
display: inline-block;
padding-right: 50px;
}

最佳答案

您可以使用 :before:after 伪选择器来创建看起来像 width 等于 width 的背景效果 页面。

body {
overflow: hidden;
width: 100%;
margin: 0;
}
.container {
max-width: 1200px;
margin: 0 auto;
}

.menu {
height: 80px;
position: relative;
}

.menu:before {
background-color: rgb(33, 33, 33);
position: absolute;
right: -9999px;
left: -9999px;
content: '';
z-index: -1;
bottom: 0;
top: 0;
}

.menu ul {
padding: 0;
margin: 0;
color: #fff;
list-style: none;
font-weight: bold;
float: right;
}

.menu ul li {
display: inline-block;
padding-right: 50px;
}
.menu ul li a {
color: #fff;
}
<div class="container">
<nav class="menu">
<ul>
<li><a href="#view1">HOME</a></li>
<li><a href="#view2">ABOUT ME</a></li>
<li><a href="#view3">SERVICES</a></li>
<li><a href="#view4">CURRENT PROJECT</a></li>
<li><a href="#view5">PORTFOLIO</a></li>
<li><a href="#view6">CONTACT ME</a></li>
</ul>
</nav>
</div>

关于html - 将元素扩展到容器之外,但将子元素保留在容器内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38614432/

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