Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Миниатюрки на страницу
Форумы портала PHP.SU » Клиентская разработка » HTML, Дизайн & CSS » Миниатюрки на страницу

Страниц (1): [1]
 

1. Платинум - 13 Мая, 2010 - 20:42:31 - перейти к сообщению
Привествую господа.
Появилась нужда сделать вот такую вешь. Как описать точно не знаю. Попробую по детски.

Вообшем мне надо, что бы миниатюрки выводились из БД на страницу в таком виде:

Если в ряду больше 6 миниатюр, то 7 миниатюру выводить на 2 строчку итд..
2. Мелкий - 13 Мая, 2010 - 22:44:10 - перейти к сообщению
Если правильно понял:

при выводе считаете, сколько уже вывели в ряду, если 6 - то вставляете разрыв строки и обнуляете счётчик.
3. Платинум - 14 Мая, 2010 - 04:17:23 - перейти к сообщению
А можно сделать какой то вариант с CSS ?
К примеру указать длину рамки и если миниатюрка невмешается, то выводить на слеущую строчку,
4. JustUserR - 14 Мая, 2010 - 09:40:26 - перейти к сообщению
Платинум пишет:
Если в ряду больше 6 миниатюр, то 7 миниатюру выводить на 2 строчку итд..
Для таких расчтов как правило используется функция остатока от деления - таким образом вы по очереди выводите картинки и проверяете if(($i!=0)&&($i%6==0)) и если условие выполняется то добавляете <br>
С помощью CSS можно разделить картики через пробел и сделать display:inline и указать фиксированную ширину - тогда он будет стараться перносить их на следующую строку
5. Платинум - 14 Мая, 2010 - 12:11:14 - перейти к сообщению
Порыв Google нашел нужный мне скрипт немного переделав его:

PHP:
скопировать код в буфер обмена
  1. <?
  2. $d = dir('gal/'); //указываем директорию с файлами изображений
  3. $i = 0; //обнуляем счетчик текущей позации
  4. $e = 1; //извлекаем переменную для хранения имени файла
  5.         while(false !== ($e = $d->read()))//цикл чтения директории
  6.         {
  7.                 //определяем условие для считывания файлов с подстановкой расширения *jpg
  8.                 if(strpos($e,'.jpg'))
  9.                 {
  10.                         ++$i; //увеличиваем счетчик текущей позации файла на единичку
  11.                         //вывод изображений-ссылок
  12.                         echo '<div class="thumbnail">
  13.                         <a class="gallery" href="gal/'.$e.'" rel="iload::fields" >
  14.                         <img src="gal/'.$e.'" alt="Photo" width="120" height="150" /></a>
  15.                         </div>'.chr(10);
  16.                         //если 6 изображений, то делаем перенос на следующую строчку
  17.                         if(!($i%6)) echo '<br />';
  18.                 }
  19.         }
  20.  
  21. ?>


Кому надо забирайте.
6. JustUserR - 15 Мая, 2010 - 13:48:59 - перейти к сообщению
Платинум пишет:
Порыв Google нашел нужный мне скрипт немного переделав его:
Так это вовсе не CSS-решение а обычный построчный вывод PHP с использованием функции остатка от деления - как CSS вариант это установка фиксированной ширины div-блока и автоматической высоты - тогда элементы должны переносться автоматически (Лучше если они разделены пробелом)

 

Powered by ExBB FM 1.0 RC1