Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Товары "расползаются" по странице.

Здравствуйте!
Товары на Главной "расползаются", то есть располагаются не симметрично (см прикрепленное изображение).
Как это можно исправить?


Это  давно известный дефект div-верстки.
Надо в шаблоне использовать таблицы.


что-то вы там наделали со списками. стандартно такого нет.

Это не дефект!
Зачем таблицы? дивов вполне достаточно. таблицы морально устарели. Если и использовать то только непосредственно в тех местах, где без них ну ни как не сделать.


Ничего особенного не делал, разве что поменял ширину списка в CSS, не больше чем на пару десятков пикс. А разъезжается непредсказуемо - то нормально отображается, то загружаешь очередную картинку товара, и вдруг все расползается...закономерность никак не уловлю. Обратил только внимание, что слева от неправильно позиционированной картинки кусок border откуда-то взялся (и на скриншоте тоже виден). Может, действительно в таблицу их загонять? Неуловимая какая-то проблема...



что-то вы там наделали со списками. стандартно такого нет.

Это не дефект!
Зачем таблицы? дивов вполне достаточно. таблицы морально устарели. Если и использовать то только непосредственно в тех местах, где без них ну ни как не сделать.


В шаблоне cleanshop, похоже, нет.
В стандартном шаблоне есть.

А вообще надо бы автору URL  давать...


эти списки по два в ряд должен разделять див с clear:both;
а у вас похоже его нет или его как-то поправили


Как раз шаблон cleanshop корректирую, это с ним проблема описанная возникла. Сравнил сейчас код CSS оригинала и код CSS моего измененного шаблона, там, где "Товар в две колонки", и вижу, что код одинаковый, за исключением одного цвета и замены фона цены на свой (background: url(img/tsena.png) no-repeat 100%;)
А .clear {clear:both;line-height:0;} и там и там присутствует, в самом начале CSS.
Адреса еще нет, делаю шаблон на Денвере.


я про шаблон вывода товара а не про стили


в цикле листингов товара должен быть такой код

{if $smarty.foreach.aussen.iteration+2 gt $smarty.foreach.aussen.total}
{php}
// Определям сколько колонок будет на странице
if ($col>=2) {
$col=0;
// Убираем .sep (border_bottom) у последних двух товаров
echo '<div class="clear"></div>';
}
{/php}
{else}
{php}
// Определям сколько колонок будет на странице
if ($col>=2) {
$col=0;
echo '<div class="clear sep"></div>';
}
{/php}
{/if}


<div class="clear sep"></div> - это разделение с border-bottom
<div class="clear"></div> - просто разделение.


.


Вопрос так и остался нерешенным. Но заметил закономерность. Список сбивается если картинка другого размера. То есть, чтобы проблема не проявлялась, картинки всех товаров должны быть строго одного размера.
Вообще, это не удобно - подгонять все картинки товаров под один размер
Кто знает решение - подскажите.


После долгих часов разбирательства нашел и устранил, наконец причину глюка. У карточки товара (картинка+описание) задана ширина, но не задана высота. Так вот, если в product_listing_1_columns_two всю карточку товара заключить в div, и в css задать этому диву высоту, то товары выстраиваются как надо.
NeBox, что думаете?
Один вопрос остался: не могу пока найти, как подключить горизонтальный border для разделения товаров. Пожалуйста, подскажите.


Источник



Copyright ShopOS