Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Div'ы в одной строке


Автор: Ruslan_ 12.3.2005, 17:19
Я делаю фотоальбом своей группы. И у меня возникла следующая проблема.
Мне необходимо разместить фотки, как в виндовом проводнике, когда выбран "Вид->Эскизы страниц". Каждую фотографию я помещаю в Div'ку, которую определил след. образом:
Код

div.album{
float:left;
width: 96px;
height: 96px;
margin: 0 25px;
border: 1px solid #999;
margin-top: 10px;
text-align:center;
}

Фотографии находятся на холсте (это тоже Div'ка). Opera и Mozilla отображают Div'ки, как в проводнике:
Код

_____________________
|  _    _    _    _  |
| |_|  |_|  |_|  |_| |-- холст
|  _    _    _    _  |
| |_|  |_|  |_|  |_| |
|____________________|

А вот Mizilla не совсем. Она отрезает нижнюю часть холста:
Код

_____________________
|____________________|-- холст
  _    _    _    _ 
 |_|  |_|  |_|  |_|
  _    _    _    _ 
 |_|  |_|  |_|  |_|

Как разрешить эту проблему? Или просто не заморачиваться и использовать таблицу?
Просто даже, если удасться решить эту проблему, я не знаю как позиционировать картинку по вертикали посередине в Div'ке....
Посоветуйте пожалуйста как быть в этой ситуации.

Автор: Joes 12.3.2005, 18:09
Зачем так извращаться... Ладно, если бы у тебя было какое-нибудь необычное расположение картинок... А так все по стандарту стоит... Суй все в <table>...

Автор: Ruslan_ 12.3.2005, 22:43
Видишь ли Joes, использовать Div здесь намного логичнее (imho), чем table. Каждый img находится в Div'ке, которая отвечает за боковые, а так же верхний отступы. В случае, если "холст станет уже или шире", у меня не возникнет ни каких проблем, php скрипт тот же самый: обращение к БД, и вывод на экран <DIV class"album"><IMG src="..."></DIV> в цикле, вот и все.
Просто проблема такова. Как вывести на экран Div'ки, идущие в одной строке, как правильно это сделать.
И как позиционировать текст повертикале посередине. Вот и все, всего 2 скромных вопроса. :) Может кто поможет? плз )

Автор: Joes 13.3.2005, 08:27
Цитата
Как вывести на экран Div'ки, идущие в одной строке

Совсем вопроса не понял smile вывести просто, <div></div> <div></div> <div></div>... Можешь все в один большой <div>взять, а внутри пихать их склоько влезет... Что значит дивки??? Там что в них картинки, текст??? Если картинки, то <img src>, ссылки <a href> и т.д.
На счет текста:
Использую <div> вместе со стилями...
З.Ы. почитай здесь: http://www.htmlbook.ru/content/85.html

Автор: Gold Dragon 13.3.2005, 11:40
Ruslan_
Я не понимаю в чём проблема:) Зачем так извращаться. Делай всё в таблице.
Ну куда может быть проще, вставляешь свой ДИВ в ячейку, если уж совсем без них никак. А холст твой и будет таблица

Автор: Ruslan_ 14.3.2005, 11:26
Joes! Если написать <div>Текст</div> <div>Текст</div> <div>Текст</div>, то каждый DIV будет в новой строке, но не в одной. Я читал о применении слоев, но ничего не нашел о том, как их в строчку разместить. Конечно есть вариант позиционирования, типа position:...; left:XXpx; но, может как нибудь без этого их можно разместить?
А на счет таблиц, спасибо за совет. Действительно с таблицей все на много проще. Но я просто решил постепенно переходить с table на div. И вот возникли вопросы. Еще мне не понятно как в DIV'ке с заданной высотой позиционировать контент посередине. В таблице с помощью valign="middle", я думал, что здесь по аналогии vertical-align:middle; но оказалось что нет...

Автор: Mal Hack 14.3.2005, 12:55
Ruslan_
глянь сюда: http://forum.vingrad.ru/index.php?showtopic=41998 как раз это уже обсуждалось.

Автор: Ruslan_ 14.3.2005, 14:25
Конечно обсуждалось, но не то. Я так понял ты хочешь сказать: используй таблицы. Кстати, я уже решил первую проблему, добавив в низу <DIV class="clear:both;"></DIV>
А как решить вторую? Кто-нить знает как позиционировать по вертикале по середине в DIV'ке???

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)