2013-06-05 4 views
1

Я создаю список, используя <ul>, но мне нужно, чтобы оно было «объединено». Несмотря на то, что я удалил все границы, отступы и поля, он по-прежнему создает пространство между изображениями. Как его удалить?Удалить место между ul

<h4>An Unordered List:</h4> 
<ul> 
    <li><img class="nomarge" ..../></li> 
    <li><img class="nomarge" ..../></li> 
    <li><img class="nomarge" ..../></li> 
</ul> 
<ul> 
    <li><img class="nomarge" ..../></li> 
    <li><img class="nomarge" ..../></li> 
    <li><img class="nomarge" ..../></li> 
</ul> 

CSS

ul { 
    padding: 0px 0px 0px 0px; 
    margin: 0px 0px 0px 0px; 
    border: 0px 0px 0px 0px; 
    display: table; 
    table-layout: fixed; 
    display: inline; 
} 

li { 
    padding: 0px 0px 0px 0px; 
    border: 0px 0px 0px 0px; 
    margin: 0px 0px 0px 0px; 
    display: table-cell; 

} 
+0

с использованием отрицательных значений может быть способом ... –

+0

Если у вас есть '0px' как значение, вы можете спокойно опустить устройство. '0px' совпадает с' 0em', '0%' и так далее. – kleinfreund

+0

Должны ли изображения быть в одной строке или в нескольких рядах? – Daniel

ответ

8

Используйте этот CSS:

img{ display: block;} 
+0

Спасибо за форматирование, Пит! – Ani

+0

Это решило мою проблему, спасибо :) –

+0

Добро пожаловать! :) – Ani

2

Какие стили, установленные на img тег? Вы должны установить их на 0. Кстати, если вы задаете размеры пикселей для всех сторон (сверху, снизу, слева, справа) элемента с помощью css, вы можете сделать сокращение от 0 (без единиц) вместо того, чтобы повторять 0px четыре раза.

То есть:

border: 0; 
padding: 0; 
margin: 0; 
+0

img { max-width: 100%; border: 0; -ms-интерполяция-режим: бикубический; ширина: авто; высота: авто; } –

+1

@PedroSilva Установите дополнение и поле на 0, тоже. Таблицы стилей пользовательских агентов обычно бросают небольшое пополнение на изображениях по умолчанию. Есть ли ссылка, на которую я могу смотреть? – smilebomb

+0

Да, спасибо, я знал, этот «длинный код» был просто для того, чтобы я делал все правильно. :) –

1

Добавить img { vertical-align: sub; } и он должен работать.

ul { 
    padding: 0px 0px 0px 0px; 
    margin: 0px 0px 0px 0px; 
    border: 0px 0px 0px 0px; 
    display: table; 
} 

li { 
    padding: 0px 0px 0px 0px; 
    border: 0px 0px 0px 0px; 
    margin: 0px 0px 0px 0px; 
    display: table-cell; 
} 

img { 
    vertical-align: sub; 
} 

http://jsfiddle.net/pulleasy/Cw3Gj/

1

Зазор между изображением происходит от vertical-align: baseline; всех изображений (встроенный блок элементов) были назначены по умолчанию. Таким образом, изображение находится на той же линии, что и обычный текст. Это может быть полезно, но не в вашем распоряжении.

Установите это свойство в центре, чтобы избежать этой проблемы:

img { 
    vertical-align: middle; 
} 
1

Тест CSS:

ul { 
    padding: 0px; 
    border: 0px; 
    display: table; 
    table-layout: fixed; 
    display: inline; 
} 

li { 
    padding: 0px; 
    border: 0px; 
    display: table-cell; 
    border-spacing: 0px 0px; 
    border-collapse: collapse; 
} 
img { 
    padding: 0px; 
    margin: 0px; 
} 
Смежные вопросы