powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Списки ul li
18 сообщений из 18, страница 1 из 1
Списки ul li
    #38418037
urukhay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет. Всегда верстал таблицами, и по сей день ими верстаю. Но ради интереса, решил попробовать одну вещь заверстать списками. Задача: есть 3 строки, в каждой по 3 ячейки. Между строками промежуток в 1 пиксель, межу ячейками промежуток в 1 пиксель. НО! Отступа от каждой последней ячейки в строчке и отступа от последней строки быть не должно. Сделал такой html:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Template</title>
<style>
	ul { list-style:none; width:160px; border:1px solid black; }
	ul li { float:left; width:50px; height:50px; margin-right:1px; margin-bottom:1px; border:1px solid red; }
</style>
</head>
<body>
<table>
  <tr>
    <td>
      <ul>
          <li>&nbsp;</li>				
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
          <li>&nbsp;</li>		
      </ul>
    </td>
  </tr>
</table>
</body>
</html>


Если вы запустите этот html, описанные отступы вы увидите, и понятно почему. Вопрос: как сделать так, чтобы их не было? Можно каждому li присваивать класс, а каждому 3-му, 6-му, 9-му и т.д. не присваивать. Тогда отсутпов не будет, но при формировании html в языке программирования нужно тогда проверять номер элемента списка и номер строки. Есть какие-то другие способы, чтобы задачу можно было решить только средствами CSS?

Заранее спасибо!
...
Рейтинг: 0 / 0
Списки ul li
    #38418082
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Списки ul li
    #38418501
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayВсем привет. Всегда верстал таблицами, и по сей день ими верстаю. Но ради интереса, решил попробовать одну вещь заверстать списками.
Прикольная смена стиля.
Верстать "списками" это что-то новенькое для меня...
...
Рейтинг: 0 / 0
Списки ul li
    #38418505
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayЗадача: есть 3 строки, в каждой по 3 ячейки. Между строками промежуток в 1 пиксель, межу ячейками промежуток в 1 пиксель. НО! Отступа от каждой последней ячейки в строчке и отступа от последней строки быть не должно.
Не совсем понял задачу...
Картинкой челе проиллюстриуй... Где чего должно быть... А где не должно...
...
Рейтинг: 0 / 0
Списки ul li
    #38418507
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89???
Загадочные отступы между инлайн-элементами
У автора нет инлайн элементов... Есть табличные и блочные.
...
Рейтинг: 0 / 0
Списки ul li
    #38418588
Фотография Малыхин Сергей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaurukhayЗадача: есть 3 строки, в каждой по 3 ячейки. Между строками промежуток в 1 пиксель, межу ячейками промежуток в 1 пиксель. НО! Отступа от каждой последней ячейки в строчке и отступа от последней строки быть не должно.
Не совсем понял задачу...
Картинкой челе проиллюстриуй... Где чего должно быть... А где не должно...

Наверно автор хочет сверстать таблицу с помощью списков =)
но в разметке у него не выделены в отдельные блоки строки и столбцы
однако стили для строк и столбцов задать нужно
...
Рейтинг: 0 / 0
Списки ul li
    #38418609
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Малыхин СергейНаверно автор хочет сверстать таблицу с помощью списков =)
Тогда это плохая затея...
...
Рейтинг: 0 / 0
Списки ul li
    #38418615
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayНО! Отступа от каждой последней ячейки в строчке и отступа от последней строки быть не должно
Есть в ЦСС такой псевдоэлемент как
http://htmlbook.ru/css/last-child
...
Рейтинг: 0 / 0
Списки ul li
    #38418698
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а еще можно добавить
<li class="last">...</li>
</ul>
;)
...
Рейтинг: 0 / 0
Списки ul li
    #38418755
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Списки ul li
    #38419111
urukhay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем огромное сорри!
Много чего прислали, а я пропал - просто тут проблемы на работе были, извиняюсь.

Да, действительно, я хотел заверстать таблицу с использованием списков (извините, если неправильно выразился при постановке задачи:) Но думаю, меня поняли). Почему я так хотел: то был просто пример. Но вижу сейчас, часто верстают с использованием списков, например, страницы со списком товаров. Т.е. есть страница, там выводится по 3 товара в ряд. Вот я и хотел понять, как удобнее верстать с точки зрения формирования html в языке программирования.

При верстке таблицами, в данном случае, нужно проверять каждую третью ячейку строки и оборачивать ее в <tr>. При этом, если в последней строке вывелось меньше 3х ячеек, ее нужно дополнить пустыми ячейками (или сделать colspan).

В случае списков, можно сделать, чтобы они автоматически переносились. Тогда не нужно делать проверки, описанные выше. Мелочь, а приятно. И если можно без этого обойтись - почему бы и нет. Но тут натолкнулся на другую проблему с отступами.

Да, можно добавлять класс last, как советовали. Я сам об этом писал, но в таком случае, особых преимуществ списков над таблицами, в данном случае, не вижу. Идея была просто сэкономить время на лишние проверки, если это возможно.

На картинке ниже, первый пример - как должно быть (сверстано таблицами), второй - как не должно быть (сверстано, с использованием списков). Не должно быть лишшних отступов справа и снизу.

Картинка

Вообще, не вижу сейчас ни одного сайта, сверстанного таблицами) А я верстаю, и моя верстка железно работает во всех браузерах, даже в старых IE6 (хоть он уже почти и не используется). Дивы я тоже использую, но для определенных целей, например, для фиксированных/абсолютных слоев, всяких выпадающих менюшек с эффектами, когда в див нужно подгрузить какой-то html аяксом и т.д. Но общая сетка у меня табличная. А сейчас, я смотрю, модно все верстать дивами)

Вообще, последней абзац к теме не относится) Это я так написал. Сейчас много всего написано и по таблицам и по дивам. Но спор религиозный, что однозначно лучше - ответа не будет никогда. И то, и другое - инструмент и нужно его просто использовать по назначению.
...
Рейтинг: 0 / 0
Списки ul li
    #38419159
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhay Картинка
Как вариант, на чистом списке...
Конкретно в 3 колонки.

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
* {
	margin: 0;
	padding: 0;
}
ul {
	float: left;
	list-style-type: none;
	border: 1px solid #000000;
}
li {
	float: left;
	width: 50px;
	height: 50px;
	margin-top: 2px;
	margin-right: 2px;
	border: 1px solid red;
}
li:nth-child(3n+1) {
	clear: both;
}
li:nth-child(3n+1) + li + li {
	margin-right: 0;
}
li:first-child,
li:first-child + li,
li:first-child + li + li {
	margin-top: 0;
}
</style>
<script type="text/javascript">
</script>
</head>
<body>
<ul>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
	<li></li>
</ul>
</body>
</html>
...
Рейтинг: 0 / 0
Списки ul li
    #38419179
urukhay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторli:nth-child(3n+1) + li + li
Про подобные вещи даже не слышал)) Обходился таблицами и проверками.

Вот и думай, как лучше) ЦСС городить, или оставить все, как делал раньше)
...
Рейтинг: 0 / 0
Списки ul li
    #38419189
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayПро подобные вещи даже не слышал))
Есть многое на свете, друг Горацио, что только снилось нашим мудрецам... (с)

urukhayВот и думай, как лучше) ЦСС городить, или оставить все, как делал раньше)
Тут главное без фанатизма.
...
Рейтинг: 0 / 0
Списки ul li
    #38419206
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayДа, можно добавлять класс last, как советовали. Я сам об этом писал, но в таком случае, особых преимуществ списков над таблицами, в данном случае, не вижу. Идея была просто сэкономить время на лишние проверки, если это возможно.

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

в вашем случае решений *(я имею в виду картинку с примером) может быть несколько, и зависят от условий, например, ширина динамическая или же задана жестко, с высотой - тут тоже можно долго об стену биться*(в отличии от таблиц, она сама раздвинет чего надо) . можно воспользоваться "слипанием отступов", т.е добавить их сверху и слева "осимметричеть" картинку, можно добавить специальные классы, как вы добавляли тр, можно пробежаться после яваскриптом, и убрать ненужное << хотя этот вариант мне меньше всего нравится. если не нужна поддержка более старых браузеров, воспользоваться-таки новыми селекторами, аки в примере krvsa или другими :=)
...
Рейтинг: 0 / 0
Списки ul li
    #38419242
urukhay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ясно, спасибо всем за участие.
Способов много, нужно попробовать и тот, и другой, чтобы сделать уже вывод, что для тебя удобнее, а что нет!
...
Рейтинг: 0 / 0
Списки ul li
    #38419244
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zoriaединственное преимущество перед таблицами у списков вижу в их отностительной "чистоте разметки", и не загруженности вложенностью.
Контента меньше... Что при ajax-запросах к серверу даст свое преимущество...
Такой контент даст больше возможностей "конечному пользователю", поменяв ЦСС, по-другому смотреть страницы.
Таблицы такой свободы не дадут.
...
Рейтинг: 0 / 0
Списки ul li
    #38419246
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urukhayчто для тебя удобнее, а что нет!
и только так!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Списки ul li
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]