2014-11-14 6 views
1

Я использую <ul> тегов и <li> тег для списка мои данные:уль колонка Li перекрытия [HTML и CSS]

ul.listbook{ 
 
    -webkit-column-count: 3; 
 
    -moz-column-count: 3; 
 
    column-count: 3; 
 
} 
 

 
ul.listbook li{ 
 

 
}
<ul class="listbook"> 
 
    <li>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</li> 
 
    <li>bbbbbb</li> 
 
    <li>ccccccc</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    ... 
 
</ul>

Результат является: coloum overlap

Слово в первом ребенок перекрывает второй столбец. Как мне сделать?

ответ

2

Добавление word-wrap: break-word решит проблему упаковки.

ul.listbook{ 
 
    -webkit-column-count: 3; 
 
    -moz-column-count: 3; 
 
    column-count: 3; 
 
} 
 

 
ul.listbook li{ 
 
word-wrap: break-word; 
 
}
<ul class="listbook"> 
 
    <li>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</li> 
 
    <li>bbbbbb</li> 
 
    <li>ccccccc</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    <li>aaaaaaaa</li> 
 
    ... 
 
</ul>

перенос слов: брейк-слово

Указывает, что обычно бьются слова могут быть разбиты на произвольных точках, если нет иного приемлемых точек разрыва в линия.

Ссылка: word-wrap

+0

избил меня! хорошая работа. такой элегантный sol'n – Todd

+0

Спасибо @Todd! – emmanuel

1

Использование word-wrap: break-word для этого:

ul.listbook li { 
word-wrap: break-word; 
} 
0

Если вы хотите вырезать слово вместо того, чтобы ломать, использовать это:

ul.listbook li{ 
    overflow: hidden; 
    position: relative; 
} 
Смежные вопросы