我想知道如何将我在我创建的导航菜单中心写的标题文本居中,文本已经居中但是它位于导航菜单的顶部,而不是在中间,这是什么我需要。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Home</title>
</head>
<style>
body {margin:0;}
.Header {
z-index: 100;
position: fixed;
top: 0;
left: 0;
width: 100%;
background-color: #000000;
height: 70px;
}
@media screen and (max-width:680px) {
.Header.responsive {position: relative;}
.Header.responsive li.icon {
position: absolute;
right: 0;
top: 0;
}
}
@media (max-width: 960px){
.Header .headerLogo{
display: inline-block;
width: 86px;
height: 15px;
margin-top: 17px;
margin-left: 6px;
}
}
</style>
</head>
<body>
<div class="Header" id="myHeader">
<a class = "headerLogo">
<header><center><i><font size = "6" face = "verdana" color = "white">Lunation Boards</font></i></center></header>
</a>
</div>
</body>
</html>
答案 0 :(得分:3)
您有三个选项,,前两个选项更可靠。
第一个选项使用flex-box水平和垂直居中项目。
div {
width: 100%;
height: 200px;
display: flex;
justify-content: center;
align-items: center;
background: blue;
}
text {
background: orange;
}
<div>
<text>Centered horizontally and vertically</text>
</div>
第二个选项,而不是使用flex-box,使用父元素的相对位置,子元素的绝对位置,以及子元素的transform: translate(X, Y)
。
div {
width: 100%;
height: 200px;
position: relative;
background: blue;
}
text {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: orange;
}
<div>
<text>Centered horizontally and vertically</text>
</div>
为了使元素垂直居中,第三个选项使用的line-height
等于父元素的height
。
div {
width: 100%;
height: 200px;
position: relative;
background: blue;
}
text {
position: absolute;
left: 50%;
transform: translateX(-50%);
line-height: 200px;
background: orange;
}
<div>
<text>Centered horizontally and vertically</text>
</div>
答案 1 :(得分:1)
这应该可以解决问题。
要清理HTML,请按照这样设置并删除<center>
和<font>
等标记:
<div class="Header" id="myHeader">
<a class = "headerLogo">
<h1>Lunation Boards</h1>
</a>
</div>
您可以使用display: flex
将标题中的内容置于中心位置:
.Header {
z-index: 100;
position: fixed;
top: 0;
left: 0;
width: 100%;
background-color: #000000;
height: 70px;
display: flex;
justify-content: center;
}
a {
width: 100%;
}
h1 {
margin: 0;
color: #fff;
}
@media (max-width: 960px){
.Header .headerLogo {
display: inline-block;
width: 86px;
height: 15px;
margin-left: 6px;
}
}
以下是变化的完整小提琴:
答案 2 :(得分:0)
尝试(您的代码在这里)。替换:(你的代码在这里),你想要他的中心。
答案 3 :(得分:0)
<center>
标记,将其与css对齐。<header>
标记。到目前为止我使用过html和css,但我认为它会有所帮助
以下是示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Home</title>
</head>
<style>
body {margin:0;}
.Header {
z-index: 100;
position: fixed;
top: 0;
width: 100%;
background-color: #000000;
height: 70px;
}
@media screen and (max-width:680px) {
.Header.responsive {position: relative;}
.Header.responsive li.icon {
position: absolute;
right: 0;
top: 0;
}
}
@media (max-width: 960px){
.Header .headerLogo{
position: relative;
display: inline-block;
width: 86px;
height: 15px;
margin: 0 auto;
}
}
</style>
</head>
<body>
<div class="Header" id="myHeader">
<a class = "headerLogo">
<i><font size = "6" face = "verdana" color = "white">Lunation Boards</font></i>
</a>
</div>
</body>
</html>