[英]CSS Won't align <li>
I want to set list in header section but everytime I do, my home, about and blog goes out of background color or background color minimize. 我想在标题部分设置列表,但是每次我做的时候,我的家,关于和博客都超出了背景色或使背景色最小化。 I dont know how much you can understand me what i want to say if you want i can put picture where i want list to be.
我不知道你能理解我我想说什么,如果你想我可以把图片放在我想要的地方。
header { background: #304852; color: #ffffff; border-bottom: #585858 3px solid; } header a { color: #ffffff; text-decoration: none; text-transform: uppercase; font-size: 40px; } header ul { margin: 0; padding: 0; } header li { float: left; display: inline; padding: 0 20px 0 20px; } header nav { float: right; }
<header> <div id="logo"> <img src="http://lorempixel.com/120/60/" width="120px" height="60px"> </div> <nav> <ul> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">HOME</a></li> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">ABOUT</a></li> <li> <a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">BLOG</a></li> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">CONTACT</a></li> </ul> </nav> </header>
The best course of action would be to remove the float
from your header li
and header nav
CSS selectors, and instead apply a simple text-align
to header nav
. 最好的做法是从
header li
和header nav
CSS选择器中删除float
,然后将简单的text-align
应用于header nav
。
See the attached code for reference. 请参阅随附的代码以供参考。
header{ background: #304852; color: #ffffff; border-bottom: #585858 3px solid; } header a{ color: #ffffff; text-decoration: none; text-transform: uppercase; font-size: 40px; } header ul{ margin: 0; padding: 0; } header li{ /* float: left; */ display: inline-block; padding: 0 20px 0 20px; } header nav{ /* float: right; */ text-align: right; }
<header> <nav> <ul> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Blog</a></li> </ul> </nav> </header>
Two changes necessary: 必须进行两项更改:
1.) float: left;
1.)
float: left;
on #logo
, since other wise it's a block element and takes the whole width. 在
#logo
上, #logo
,它是一个block元素,并占据整个宽度。
2.) overflow: auto
on header
, since it then only contains floated elements and wouldn't keep the background color. 2.)
overflow: auto
在header
overflow: auto
,因为它仅包含浮动元素,并且不保留背景颜色。
header { background: #304852; color: #ffffff; border-bottom: #585858 3px solid; overflow: auto; } header a { color: #ffffff; text-decoration: none; text-transform: uppercase; font-size: 24px; } #logo { float: left; } header ul { margin: 0; padding: 0; } header li { float: left; display: inline; padding: 0 20px 0 20px; } header nav { float: right; }
<header> <div id="logo"> <img src="http://lorempixel.com/120/60/" width="120px" height="60px"> </div> <nav> <ul> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">HOME</a></li> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">ABOUT</a></li> <li> <a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">BLOG</a></li> <li><a href="C:\\Users\\Mihajlo\\Desktop\\retardirani mihajlo\\Web about">CONTACT</a></li> </ul> </nav> </header>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.