我试图将汉堡按钮图标添加到标题中。在我添加之前,我的Example Title
居中。添加图标后,Example Title
向右推一点。
即使图标已就位,我希望Example Title
保持居中。
我已经把
* {
margin: 0;
padding: 0;
}
在我的样式表中,但在这种情况下它没有帮助。
以下是我的问题的视觉示例。
* {
margin: 0;
padding: 0;
}
body {
text-align: center;
}
#navbut {
cursor: pointer;
font-size: 20px;
}
#title {
width: 100%;
background-color: #373737;
color: #f4f4f4;
padding: 5px 0;
display: table;
text-align: center;
font-size: 4em;
}
#title p {
display: table-cell;
vertical-align: middle;
}

<div id="title">
<span id="navbut">☰</span>
<p>Example Title</p>
</div>
&#13;
答案 0 :(得分:2)
position: absolute;
会有所帮助。
* {
margin: 0;
padding: 0;
}
body {
text-align: center;
}
#navbut {
position: absolute;
left: 0;
top: 0;
}
#title {
position: relative;
width: 100%;
background-color: #373737;
color: #f4f4f4;
padding: 5px 0;
display: table;
text-align: center;
font-size: 4em;
}
#title p {
display: table-cell;
vertical-align: middle;
}
<div id="title">
<span id="navbut">☰</span>
<p>Example Title</p>
</div>
答案 1 :(得分:1)
使用absolute
定位到#navbut
和relative
定位到#title
。
就像:
#navbut {
position: absolute;
left: 10px;
top: 50%;
transform: translateY(-50%);
}
#title {
position: relative;
}
* {
margin: 0;
padding: 0;
}
body {
text-align: center;
}
#navbut {
cursor: pointer;
font-size: 20px;
position: absolute;
left: 10px;
top: 50%;
transform: translateY(-50%);
}
#title {
width: 100%;
background-color: #373737;
color: #f4f4f4;
padding: 5px 0;
display: table;
text-align: center;
font-size: 4em;
position: relative;
}
#title p {
display: table-cell;
vertical-align: middle;
}
&#13;
<div id="title">
<span id="navbut">☰</span>
<p>Example Title</p>
</div>
&#13;
希望这有帮助!
答案 2 :(得分:1)
我抓住你的问题并从我这边做出更好的解决方案,希望它能帮到你。
* {
margin: 0;
padding: 0;
}
body {
text-align: center;
}
#navbut {
cursor: pointer;
font-size: 20px;
position: absolute;
top: 30px;
left: 20;
}
#title {
width: 100%;
background-color: #373737;
color: #f4f4f4;
padding: 5px 0;
display: table;
text-align: center;
font-size: 4em;
position: relative;
}
#title .exapmle-title {
display: table-cell;
vertical-align: middle;
}
&#13;
<div id="title">
<div id="navbut">☰</div>
<div id="example-title">Example Title</div>
</div>
&#13;
答案 3 :(得分:0)
元素通常会受到兄弟姐妹的影响,除非你“脱离流动”。在您的情况下,您可能希望使用display: block;
来确保div响应您的位置属性position: absolute;
以允许它独立于兄弟姐妹,并position: relative;
到将跨度相对于其父级而不是页面定位。
这样的事情:
#navbut {
cursor: pointer;
font-size: 20px;
display: block;
position: absolute;
top: 10px;
left: 10px;
}
#title {
width: 100%;
background-color: #373737;
color: #f4f4f4;
padding: 5px 0;
display: table;
text-align: center;
font-size: 4em;
position: relative;
}
#title p {
display: table-cell;
vertical-align: middle;
}