我遇到的问题是我的菜单栏不会保留在标题内。
我正在尝试设计单个页面,但是当窗口变小时,我无法弄清楚如何防止导航菜单从蓝色标题中掉出来。
我尝试过使用min-height
,overflow
等,但我想我可能会遗漏一些明显的东西。
我可以得到一些帮助/建议吗?
谢谢,
阿尼什
HTML
<header>
<div class="containernav">
<img src="Images/VAC_Modern_LOGO_V3_optometrists.jpg" alt="logo" class="logo">
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#services">Services</a></li>
<li><a href="#eyecare">Eye Care</a></li>
<li><a href="#contactus">Contact Us</a></li>
</ul>
</nav>
</div>
</header>
<body>
<div id="home">
<div class="textbox">
<h3>lorem</h3>
<p>Lorem</p>
</body>
CSS
@charset "utf-8";
body {
margin: 0;
font-family: 'Roboto', sans-serif;
background: rgba(4, 26, 125, 0.5);
}
.containernav {
display: block;
width: 80%;
margin: 0;
}
img {
float: left;
height: 200px;
width: 250px;
}
header {
background: rgb(4, 26, 125);
}
header::after {
content: '';
display: table;
clear: both;
}
.logo {
float: left;
padding: 5px 0;
}
nav {
float: left;
margin-top: 10%;
}
nav ul {
margin: 0;
padding: 0;
list-style: none;
position: absolute;
}
nav li {
display: inline-block;
margin-left: 70px;
padding-top: 33px;
position: relative;
}
nav a {
color: rgba(255, 255, 255, 0.5);
text-decoration: none;
text-transform: uppercase;
font-size: 16px;
}
nav a:hover {
color: rgba(249, 29, 0, 0.5);
}
nav a::before {
content: '';
display: block;
height: 5px;
width: 0%;
background-color: rgb(255, 255, 255);
position: absolute;
top: 0;
transition: all ease-in-out 250ms;
}
nav a:hover::before {
width: 100%;
}
button {
background-color: rgba(85, 85, 85, 0.5);
color: rgba(255, 255, 255, 0.7);
height: auto;
width: auto;
padding 100px 50px;
cursor: pointer;
float: right;
font-size: 22px;
}
答案 0 :(得分:0)
您的导航栏非常混乱,我建议您只使用 width%和 float 创建它。这是一个基本的navBar,它会调整大小并始终保持在一行。
您可以使用纯CSS执行此操作,只需确保您要显示的元素直接位于父级之后。
.navTitle {
width: 20%;
float: left;
background-color: lightGrey;
cursor: pointer;
border-bottom: 1px solid black;
}
.navTitle:hover .moreInfo {
display: inline-block;
}
.moreInfo {
margin: 0;
background-color: grey;
display: none;
width: 100%;
}
&#13;
<div class="navTitle">
<p>Section 1</p>
<p class="moreInfo">More info 1</p>
</div>
<div class="navTitle">
<p>Section 2</p>
<p class="moreInfo">More info 2</p>
</div>
<div class="navTitle">
<p>Section 3</p>
<p class="moreInfo">More info 3</p>
</div>
<div class="navTitle">
<p>Section 4</p>
<p class="moreInfo">More info 4</p>
</div>
<div class="navTitle">
<p>Section 5</p>
<p class="moreInfo">More info 5</p>
</div>
&#13;
答案 1 :(得分:0)
查看以下代码。
@charset "utf-8";
body {
margin: 0;
font-family: 'Roboto', sans-serif;
background: rgba(4, 26, 125, 0.5);
}
.containernav {
display: flex;
align-items: center;
width: 100%;
margin: 0;
}
img {
height: 200px;
width: 250px;
}
header {
background: rgb(4, 26, 125);
}
header::after {
content: '';
display: table;
clear: both;
}
.logo {
padding: 5px 0;
}
nav {
}
nav ul {
margin: 0;
padding: 0;
list-style: none;
}
nav li {
display: inline-block;
margin-left: 70px;
padding-top: 33px;
position: relative;
}
nav a {
color: rgba(255, 255, 255, 0.5);
text-decoration: none;
text-transform: uppercase;
font-size: 16px;
}
nav a:hover {
color: rgba(249, 29, 0, 0.5);
}
nav a::before {
content: '';
display: block;
height: 5px;
width: 0%;
background-color: rgb(255, 255, 255);
position: absolute;
top: 0;
transition: all ease-in-out 250ms;
}
nav a:hover::before {
width: 100%;
}
button {
background-color: rgba(85, 85, 85, 0.5);
color: rgba(255, 255, 255, 0.7);
height: auto;
width: auto;
padding 100px 50px;
cursor: pointer;
float: right;
font-size: 22px;
}
<header>
<div class="containernav">
<img src="Images/VAC_Modern_LOGO_V3_optometrists.jpg" alt="logo" class="logo">
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#services">Services</a></li>
<li><a href="#eyecare">Eye Care</a></li>
<li><a href="#contactus">Contact Us</a></li>
</ul>
</nav>
</div>
</header>
<body>
<div id="home">
<div class="textbox">
<h3>lorem</h3>
<p>Lorem</p>
</body>