I am making a css menu. For this I am using a ul
. When I make li
float left then all li
's gets outside of the ul. I mean the height of ul
become zero. How can I make li
display inside ul
after giving float left.
One way to do is to make a div
tag with some common class and add clear: both to it in css but I do not want this.
How can I solve this?
Overflow happens when there is too much content to fit in a box. CSS provides various tools to manage overflow. As you go further with CSS layout and writing CSS, you will encounter more overflow situations.
Just add overflow: auto;
to the <ul>
. That will make it so that the text doesn't leak outside of the UL.
See: http://jsfiddle.net/6cKAG/
However, depending on what you're doing, it might be easier to just make the <li>
display: inline;
. It totally depends on what you're doing!
See: http://jsfiddle.net/k7Wqx/
If you define float
to your child then you have to clear your parent. Write overflow:hidden
to your UL.
ul{
overflow:hidden;
}
OR
You can also use clearfix
method for this:
ul:after{
content:'';
clear:both;
display:block;
}
Read this http://css-tricks.com/snippets/css/clear-fix/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With