Могу ли я использовать django условных обозначений внутри css? - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть файл stati c css в моем каталоге django app stati c. У меня есть несколько представлений, работающих с одним и тем же файлом css, так как в противном случае было бы ОЧЕНЬ МНОГО копирования и вставки, но мне нужно, чтобы несколько вещей отличались в зависимости от страницы, на которой я сейчас работаю.

Можно ли использовать условные операторы django, такие как {% if request.path == ... и т.д. внутри файла stati c css?

Или если не то, что было бы разумной альтернативой, которая бы достигла того же результата? Поскольку класс header.masthead используется в файле CSS примерно 10 раз, и если бы мне пришлось написать новую, скажем, header.mastheadcookiepage и назначить ту же функциональность, и сделать это для нескольких новых страниц, это было бы действительно раздражает.

Возможно, можно каким-то образом передать переменную из моих представлений в файл css в виде строки и поместить эту переменную в URL фонового изображения, чтобы я мог извлечь другое фоновое изображение из сервер в зависимости от текущего представления?

Возможно, это глупый вопрос, и я подхожу к этой проблеме неправильно, но я совершенно новичок в веб-разработке, поэтому любая помощь приветствуется!

1 Ответ

0 голосов
/ 22 апреля 2020

Немного сложно понять, что вы хотите сделать здесь без примера кода, но если вы еще этого не сделали, взгляните на шаблон Django, расширяющий функциональность .

Это позволит вам строить свой интерфейс в слоях, сохраняя биты кода (такие как js и css), которые являются общими для многих отдельных представлений в верхнем базовом уровне, поэтому их не нужно повторять.

Вы также можете использовать это для расширения из слоев, которые импортируют только соответствующие css.

. И как сноску, посмотрите на этот ответ переполнения стека в отношении того, когда лучше всего использовать тег css background-img против HTML <img>. Учитывая это, в общем случае проще придерживаться тега <img>, если вы используете файлы изображений django dynamici c. Например:

<img src="{{ image_url }}" alt="{{ image_description}}">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...