Перейти к содержимому


Фотография
- - - - -

Часть адаптивного дизайна - уменьшение числа колонок

рецепт дизайн адаптивный дизайн

Сообщений в теме: 9

#1 B_A_H_O

B_A_H_O

Отправлено 05 February 2014 - 18:58

*
Популярное сообщение!

Всем привет!

По мотивам моего вопроса об адаптивном дизайне для колонок, тут, и пишу этот рецепт.

Рецепт индивидуальный, кому-то нужен, кому-то нет, решайте сами.

 

И так, к сути.

Если на Вашем сайте вывод подкатегорий и товаров в категориях осуществляется в 4 колонки, то на малых разрешениях экрана (уже при ширине 1024px) у старых мониторов и планшетов можно наблюдать такую неприятную картину.

6EtsVB.png

 

Был вариант от Cheren-dow, но там все сводилось к выводу в 1 колонку.

 

И так, что-бы вывод товаров и подкатегорий постепенно адаптировался в меньшее число колонок нужно:

 

1. Правим CSS.

В файле jbzoo.css по адресу

/public_html/media/zoo/applications/jbuniversal/assets/css

находим строки

.jbzoo .width50 {
    width: 49%;
	float: left;
}

.jbzoo .width33 {
    width: 32%;
	float: left;
}

.jbzoo .width25 {
    width: 23.8%;
	float: left;
}

.jbzoo .width20 {
    width: 19%;
	float: left;
}

.jbzoo .width16 {
    width: 15.7%;
	float: left;
}

и удаляем в каждой из них параметр float: left; .

 

Далее, в этом же css находим строку

.jbzoo .subcategories .column,
.jbzoo .related-items .column,
.jbzoo .items .column {
    margin-right: 1%;
    margin-bottom: 1em;
}

и добавляем в ней 2 свойства:  display: inline-block; и vertical-align:top;

 

Далее пишем в css свойства @media. Пишем их в самом низу файла jbzoo.css

    @media (min-width: 1280px) {
		.jbzoo .width25 {
			width:24.2%;
		}}

    @media (min-width: 1024px) and (max-width: 1279px) {
		.jbzoo .width25 {
			width:32.3%;
		}}

    @media (min-width: 768px) and (max-width: 1023px) {
		.jbzoo .width25 {
			width:49%;
		}}

Подбор ширины колонок это дело сугубо индивидуальное, у кого какой сайт, дизайн, вкус, зрение. Делать это проще всего через Firebug и при этом изменяя разрешение экрана.

Тут в @media задаем для какого разрешения экрана будут задействованы наши свойства. На пример для экранов с шириной от 1280px и выше будет 4 колонки (min-width: 1280px), для ширины от 1024px до 1279px будет 3 колонки и т.д.

 

Класс .jbzoo .width25 это класс ваших колонок в зависимости от настроек. Определить его можно так (показано на рисунке).

Ширина width:32.3%; задается нашим блокам в указанном диапазоне ширины экрана и заставляет блоки растягиваться и занимать по 32.3% отведенного пространства ширины, тем самым выстраиваться в 3 колонки, а не 4.

1391622262-clip-299kb.png

 

2. И напоследок можно удалить некоторые лишние элементы:

Находим 2 файла. Название _default.php

Адрес 1

/media/zoo/applications/jbuniversal/templates/catalog/renderer/item_columns

Адрес 2

/media/zoo/applications/jbuniversal/templates/catalog/renderer/subcategory_columns

Открываем, находим код

        if ($isLast) {
            echo '<div class="clear clr"></div>';
        }

и удаляем его

    foreach ($vars['objects'] as $object) {

        $first = ($j == 0) ? ' first' : '';
        $last  = ($j == $count - 1) ? ' last' : '';
        $j++;

        $isLast = $j % $vars['cols_num'] == 0 && $vars['cols_order'] == 0;

        if ($isLast) {
            $last .= ' last';
        }

        echo '<div class="column rborder width' . intval(100 / $vars['cols_num']) . $first . $last . '">' . $object
            . '</div>';

        if ($isLast) {
            echo '<div class="clear clr"></div>';
        }

    }

Ну собственно и все. Себе настрою ещё и на 5 колонок дизайн, как доберусь до Full HD монитора )

 

Буду рад, если кому-то поможет. Спасибо за внимание.

 

P.S. Этот рецепт не сделает Ваш дизайн полностью адаптивным, но поможет убрать некоторые простые косяки.


  • 8

#2 ripcord

ripcord

Отправлено 18 February 2014 - 03:50

*
Популярное сообщение!

 

Ну собственно и все. Себе настрою ещё и на 5 колонок дизайн, как доберусь до Full HD монитора )

 

Привет!

Вообще-то, при таких раскладах использовать "%" в CSS плохая идея.

Можно сделать быстрее, более лучше и моднее.

.jbzoo .width25
{
	width: auto;
	max-width: 290px;    /* для данного примера и 200px подойдет, у меня произвольная ширина */
	display: inline-block;
	vertical-align: top;
	float: none;
}
.items-col-4
{
	display: block;
	text-align: center;
}

.jbzoo-tmpl-catalog
{
	display: table;
	margin: auto;
	-webkit-transition: margin-right .15s cubic-bezier(0,1.12,.39,.98);   /* для сглаживания перерисовки при ресайзе */
	transition: margin-right .15s cubic-bezier(0,1.12,.39,.98);
}

и в template.css заменить "max-width: 1728px"

на

.sheet
{	.....
          max-width: inherit;
        .....
}

станет как-то так

 

1392691617-07796ff1d0f65bca774b666284ad1

 

 

 

Подходит для любого монитора, по обеим сторонам от группы айтемов остаются равные маржины,

быстро и вкусно )))

 

 

ЗЫ. Хотя тут у нас пример с 4-мя колонками айтемов, для подобного вывода контента "кучей и без затей" лучше в потрохах Zoo включить вывод одной колонкой, и через правку CSS тонко отрегулировать размеры и media queries, если тянет к прекрасному )


Сообщение отредактировал ripcord: 18 February 2014 - 03:59

  • 6
Абгемахт, славяне!

#3 B_A_H_O

B_A_H_O

Отправлено 18 February 2014 - 03:59

рассмотрим и Ваш вариант O0


  • 0

#4 modmixa

modmixa

Отправлено 05 March 2014 - 04:21

Привет!
Вообще-то, при таких раскладах использовать "%" в CSS плохая идея.
Можно сделать быстрее, более лучше и моднее.

А можно поподробнее расписать что, куда и как? Какой имеется в виду шаблон?

и в template.css заменить "max-width: 1728px"

Я правильно понял - в настройках шаблона Catalog, в JbZoo нужно выставить что б контент выводился в одну колонку и тогда правка будет работать на всех видах устройств, включая планшеты и телефоны?
Пробовал по выше описанным рецептам - что то не заработало. Joomla 2.5.18 zoo 3.1.6 JbZoo 2.1.2, использую шаблон от роккетов (адаптивный на движке бутстрапа).


  • 0

#5 B_A_H_O

B_A_H_O

Отправлено 05 March 2014 - 04:24

Пробовал по выше описанным рецептам - что то не заработало. Joomla 2.5.18 zoo 3.1.6 JbZoo 2.1.2, использую шаблон от роккетов (адаптивный на движке бутстрапа).

Какой именно рецепт пробовали?

Покажите сайт, где Вы применили рецепт, но он не работает.


  • 0

#6 modmixa

modmixa

Отправлено 05 March 2014 - 04:42

Какой именно рецепт пробовали?

Покажите сайт, где Вы применили рецепт, но он не работает.

Пробовал Ваш - поправил Css, добавил инлайн и топ добавил медиа запросы (пробовал в Css JbZoo  потом в Css шаблона), удалил очистку в дефолте - пробую выдает ошибку. На этом все встало. Решил попробовать второй вариант -  с ним не все понятно.

Сайт пока на локалке.


  • 0

#7 B_A_H_O

B_A_H_O

Отправлено 05 March 2014 - 12:14

а свойство float Вы удалили?

Так заочно не могу Вам сказать, что не так. На хостинге посмотрел бы.

 

Попробуйте через Firebug открыть параметры в нужном месте сайта. Сделайте скрин что там и покажите.

В настройках у Вас сейчас 4 колонки?


  • 0

#8 SmetDenis

SmetDenis

Отправлено 15 January 2015 - 10:08

Адаптивный дизайн - штука нужная, планируется в 220
Предлагаю, обсудить что да как... поделиться примерами, например (=
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#9 registr

registr

Отправлено 29 July 2015 - 08:36

а есть какое-то готовое решение чтоб простой вставкой в файл стиля шаблона пусть не идеально но настраивать адаптивность, например чтоб здесь http://lepestok.net.ua/ при уменьшении размера экрана менялось кол-во столбцов, размер фоток и возможно шрифтов?
  • 0

#10 SmetDenis

SmetDenis

Отправлено 29 July 2015 - 13:34

а есть какое-то готовое решение чтоб простой вставкой в файл стиля шаблона пусть не идеально но настраивать адаптивность, например чтоб здесь http://lepestok.net.ua/ при уменьшении размера экрана менялось кол-во столбцов, размер фоток и возможно шрифтов?


Серебряной пули в адаптивном дизайне практически не бывает (сетка - исключение).
Тут только писать условия media в CSS для своей разметки.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.






Темы с аналогичным тегами рецепт, дизайн, адаптивный дизайн

Click to return to top of page in style!