Форум сайта python.su
Второй вопрос из моей серии.
Хотя как ни жаль, но на первый ответить подробно оказалось некому.
Вообщем суть проблемы вот в чём: по современным стандартам все языки должны лежать в отдельных файлах, и, замечу, что это действительно очень удобно. Однако что делать если необходимо ставить джанговские переменные в CSS? Ну например динамическое отображение цветов, или разные картинки для разных ситуаций?
Есть ли какой-то способ, чтобы “динамический” css оставался-таки целиком в своём файле не залезая в пространство html?
Офлайн
мне кажется вы сами не знаете чего хотите!
MiKбыло бы очень интересно почитать эти стандарты, скиньте ссылочку
по современным стандартам все языки должны лежать в отдельных файлах
MiKа чего вы хотели? какие еще вопросы остались?
Хотя как ни жаль, но на первый ответить подробно оказалось некому.
def home(request): return render_to_response('home.html', {'style': 'p {color: red}'})
<html> <head> <style>{{ style }}</style> </head> <body> <p>Hello world</p> </body></html>
Офлайн
terabayt
Там же написано: повторяться неохота. Я честно говоря вообще не могу понять всего этого замута со статикой в джанго.
def home(request):
return render_to_response('home.html', {'style': ‘p {color: red}’})
Отредактировано MiK (Янв. 19, 2015 18:47:28)
Офлайн
terabayt
было бы очень интересно почитать эти стандарты, скиньте ссылочку
MiKнет! только днамические параметры
Предлагаешь вынести таблицу стилей во вьюху?
body {color: white} .lala {atrr: value} . . . p {color: black} . . .
<html> <head> <link rel="stylesheet" type="text/css" href="style.css"> <style>{{ style }}</style> </head> <body> <p>Hello world</p> </body></html>
from django.shortcuts import render from django.shortcuts import render_to_response import datetime def home(request, style = ''): if datetime.datetime.now().hour <= 18: style += 'p {color: red;}' return render_to_response('home.html', {'style': style})
Отредактировано terabayt (Янв. 19, 2015 18:59:52)
Офлайн
Вообще ты натолкнул меня на мысль - “внедрить динамические параметры css” через наследование шаблонов.
То есть делаем шаблон “название.css”, внутри которого таблица стилей, ну и потом вставляем через наследование в хтмл-файл, если уж нет способа использовать для таких целей внешний ресурс.
Есть получше идеи?
ПС: просто так как ты предложил, будет громоздко при большом количестве переменных, да и попросту неудобно править.
Отредактировано MiK (Янв. 19, 2015 19:37:55)
Офлайн
MiK
в таком случае делать на JS
Офлайн
так а что нужно стилями делать?
Может нужно все эти стили прописать во внешнем файле и в дальнейшем правильно в шаблоне присваивать классы?
Офлайн
JOHN_16
На мобилки не все браузеры поддерживают джаваскрипт.
inoks
Скорее всего классы - это единственный выход.
Использовать классы как переменные для изображений, например. Но это тоже будет нормально до тех пор, пока изображений немного, иначе в таблице стилей будет многосотенный перечень классов.
Вообщем, получается Джанго отстал от жизни?
Офлайн
MiKВы счаз не про сматфоны, а именно про обычные мобильные телефоны?
На мобилки не все браузеры поддерживают джаваскрипт.
Офлайн
MiKа как должно быть в современном фреймворке?
Вообщем, получается Джанго отстал от жизни?
Офлайн