2015-05-01 3 views
0

Это clearfix, которое я нашел в Интернете. У меня 3 столбца, и я пытаюсь поместить clearfix после крайнего правого столбца.Почему мое clearfix не работает?

.right::after{ 
    content: " "; 
    display: table; 
    clear: both; 
} 

Однако он не очищает поплавки ... Что я делаю неправильно?

+0

Не могли бы вы предоставить свой HTML-код? – iRaySpace

+0

Можете ли вы опубликовать полный пример кода? Ваш HTML и CSS. – j08691

+0

[Force Element To Self-Clear the Children] (https://css-tricks.com/snippets/css/clear-fix/) может помочь вам – HandyDan

ответ

1

вы используете двойной ::, попробуйте использовать один :

.right:before, 
.right:after { 
    content: ""; 
    display: table; 
    clear: both; 
} 

Чтобы сделать clearfix работу, вам нужно, чтобы обернуть поплавки в контейнере , у которого есть clearfix:

.clearfix:before, 
 
.clearfix:after { 
 
    content: ""; 
 
    display: table; 
 
    clear: both; 
 
} 
 
.left { 
 
    float: left; 
 
}
<div class="clearfix"> 
 
    <div class="left">first</div> 
 
    <div class="left">second</div> 
 
    <div class="left">third</div> 
 
</div>

0

Пожалуйста, попробуйте следующее clearfix хак:

.right:after { 
    visibility: hidden; 
    display: block; 
    font-size: 0; 
    content: " "; 
    clear: both; 
    height: 0; 
    } 
Смежные вопросы