Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по вёрстке » Как вывести картинку в shortstory.tpl через background-image

Как вывести картинку в shortstory.tpl через background-image


     12.12.2011    дополнительные поля, картинка, верстка    Общие вопросы по вёрстке, Ламерские вопросы    8305

вопрос
Как вывести таким образом?:



Я не понимаю, что нужно вставить в строке
<td height="auto" class="catalogimage" style="background-image: url(рисунок.jpg);">&nbsp;</td>
вместо (рисунок.jpg).

Ответил: ПафНутиЙ


Когдаж вы научитесь то верстать!

Таблицы - для вывода табличных данных. На дивах это делается в виде 2х блоков и ссылки...
А вообще, для вывода картинки в фон блока нужно использовать дополнительное поле, в котором будет лежать адрес картинки.
Таким образом будет как то так:
 [xfgiven=image]style="background-image: url([xfvalue_image]);"[/xfgiven_image]

6 комментариев

pleak
Юзер

pleak - 13 декабря 2011 21:41 -

Через доп поле слишком примитивно, этот вариант не подходит. Можно как-то без доп. поля, скриптов и прочих сторонних вмешательств, но пока не понимаю как. Пример выше взят из реального шаблона, единственное, доступа к файлу shortstory.tpl не имею.
P.S. Верстать умею.

ПафНутиЙ
Админ

ПафНутиЙ - 14 декабря 2011 06:16 -

Да, можно без скриптов, допполей, и т.д.
Просто в шаблоне оставить кусок пустого кода, а в новость вставлять этот кусок кода ))))
Ещё можно для каждой новости создавать отдельный шаблон и туда вписывать нужный код.
Цитата: pleak
Через доп поле слишком примитивно

Цитата: pleak
P.S. Верстать умею.

Когда научитесь - поймёте ошибочность своего мнения. Доп поля - это самое первое и простое средство кастомизации своего ГС (или не очень).

Каков вопрос - таков и ответ. Просто помните об этом.

pleak
Юзер

pleak - 14 декабря 2011 18:19 -

Цитата: ПафНутиЙ
Просто в шаблоне оставить кусок пустого кода, а в новость вставлять этот кусок кода ))))

Ха ха, очень смешно

Цитата: ПафНутиЙ
Доп поля - это самое первое и простое средство кастомизации своего ГС (или не очень).

Жаль что у меня не ГС, так бы воспользовался.
Вообщем вот как я добился практически желаемого результата:

1. Создаем блок и пихаем в него тег short-story:
<div class="block">{short-story}</div>


Далее дело за CSS:
2. Задаем высоту в нуль пикселей, а так же прописываем правило overflow:
.block { height: 0; overflow: hidden; }


Прописываем правила для изображений находящихся в блоке класса block:
3. Задаем свойства позиционирования и размеры изображения:
.block img { position: absolute; clip: rect(0px,500px,500px,0px); height: expression(document.body.clientHeight > 500? "500px": "auto" ); width: expression(document.body.clientWidth > 500? "500px": "auto" ); }


Для вывода информации после изображения прописываем следующему блоку отступ от верхнего края в 500px (можно +10px еще).
Вот и все.

ПафНутиЙ
Админ

ПафНутиЙ - 14 декабря 2011 18:58 -

Жесть))))) Записать js в CSS - это называется без использования скриптов?
Или костыли теперь считаются показателем качественной вёрстки?
А если будет две картинки?
А как после этого работает быстрое редактирование?

Лучше уж jquery использовать (вёравно библиотека DLE есть), хотя бы решение элегантно будет выглядить.

Каков вопрос - таков и ответ. Просто помните об этом.

pleak
Юзер

pleak - 14 декабря 2011 22:49 -

Удали js и пропиши обычные свойства, смысл не изменится.
У меня не используется две картинки, так что для меня в самый раз.
Быстрое редактирование работает отлично.

Так приведи пример с jquery.

ПафНутиЙ
Админ

ПафНутиЙ - 14 декабря 2011 23:25 -

В шапке, при наведении на пункт меню "Главная".
3 новости.

Каков вопрос - таков и ответ. Просто помните об этом.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх