2014-10-31 1 views
1

Я пытаюсь создать список стран с тремя столбцами. То, что я сделал до сих пор является то, что:Ввод предметов рядом друг с другом без пробелов

enter image description here

HTML:

<div class="flagList"> 
<div class="flagColumn"> </div> 
<div class="flagColumn"> </div> 
<div class="flagColumn"> </div> 
... 
</div> 

CSS:

.flagList { 
    margin-bottom:20px; 
    width: 100%; 
    float: left; 
    font-family: Calibri, Verdana; 
    font-size:14px; 
    line-height:13px; 
    border:1px solid; 
} 

.flagColumn { 
    width: 33%; 
    float: left; 
    border:1px solid; 
} 

Я не хочу, чтобы оставить любое пространство между рядами таких как пространство между Коморскими островами и Кот-д'Ивуаром. Что я хочу сделать: enter image description here

Как мне изменить свой код?

+0

Как насчет 3 секций встроенного блока? –

ответ

1

Вы можете рассмотреть глядя в собственность overflow CSS, если вы не возражаете конец названия страны будучи спрятана. При этом, ваш CSS станет что-то вроде:

.flagColumn { 
    width: 33%; 
    float: left; 
    border:1px solid; 
    height:1em; 
    overflow:hidden; 
} 

Это позволяет избавиться от пространств, все еще имея их в алфавитном порядке, в вашем коде. Я думаю, что это также будет лучше масштабироваться по размеру экрана/окна.

Есть способы, чтобы «скрытое» содержимое показывалось, когда пользователь мыши над коробкой. Here's one example, но вы можете найти другие, которые лучше подходят для ваших целей.

+0

Спасибо за обходной путь. Не могли бы вы посмотреть на соответствующий вопрос? Http: // StackOverflow.com/questions/26716979/overflow-for-background-color-of-text – Ned

+1

У меня было бы, но я вижу, что кто-то добрался до него, прежде чем смог. :) – Tukaro

2

Это недостаток плавающей. Когда есть разные высоты, divs начнут застревать по краям больших. Есть 3 способа исправить это:

  • Используйте плагин jQuery, который выравнивает все высоты, как то, что Foundation does.
  • Дайте .flagColumn min-height, которая больше, чем самая большая. Это сделает их высоты равными, но может дать больше места, чем вам хотелось бы.
  • Переключите их из сетки div в сетку таблицы. Столы имеют свое место, и эта ситуация может быть для этого подходящей. Избегайте этого предположения, если сетка меняет ширину. Используйте это, если .flagColumn всегда 33%.

Если бы это зависело от меня, я бы использовал 1-й или 2-й вариант. Свойства таблицы могут быть изменены для работы с медиа-запросами, если это необходимо.

+0

В этом случае я пойду с решением таблицы, таблицы - лучший подход к отображению табличных данных. –

+0

Эти способы полезны для того, чтобы сделать высоты одинаковыми. В моем случае это нормально, если у них разная высота, поскольку некоторые из них имеют более длительный контент. Я пытаюсь избавиться от пробелов. Я добавил новый скриншот в свой вопрос. – Ned

Смежные вопросы