Как загрузить файл clear.css темы перед system.css и другими таблицами стилей модуля? - PullRequest
1 голос
/ 08 января 2011

Итак, я хотел бы использовать сброс CSS (например, http://bit.ly/gd2hQX) как часть темы, которую я собираю. Это поможет мне избежать различных головных болей с настройками агента пользователя по умолчанию.

Я должным образом упоминаю clear.css в mytheme.theme и включаю оптимизацию CSS для Drupal, чтобы она загружалась в файл кэша CSS, который становится частью $scripts в page.tpl.php.

Но загрузка Drupalвсе таблицы стилей темы после основных таблиц стилей, так что это приводит к переопределению многих отступов, полей и т. д. на страницах администратора, таких как admin/build/modules/list. Это боль.

Я знаю, яЯ могу вручную добавить <link rel="stylesheet"> до $scripts в page.tpl.php, но тогда я не получу всех преимуществ оптимизации CSS.

Есть ли способ загрузить определенные таблицы стилей перед ядром и модулемТаблицы стилей? В идеале это может произойти на уровне темы, но я бы заинтересовался альтернативными методами, если это невозможно.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 08 января 2011

В Four Kitchens есть запись в блоге о смешанных таблицах стилей в Drupal 7 , в которой кратко обсуждается, как этого добиться в Drupal 6. Затем в качестве примера указывается на ninesixty_css_reorder .

2 голосов
/ 08 января 2011

Нет способа использовать D6.Используя D7, вы можете реализовать hook_css_alter ().

Тогда у вас есть 3 4 возможных решения:

  1. Внедрите только те сбросы, которые вам нужны.css

  2. Ядро патча, чтобы включить ваше до

  3. , включите себя в page.tpl.php, не забудьте использовать:

    <? Php print base_path ().path_to_theme ().'/My/file.css';?>

  4. Используйте ваш clear.css, затем перепишите то, что вы стерли с помощью

3-е решение сделает ваш файл не агрегированным, но ясомневаюсь, что с помощью D6 у вас есть какое-то другое решение.

1-е - лучшее (правильное, более чистое, с учетом фреймворка), 2-е - самое уродливое, пожалуйста, никогда не исправляйте ядро, вы сделаете свою жизньад!Третий будет работать, но не будет агрегировать.

РЕДАКТИРОВАТЬ: Drupal действительно усложняет жизнь разработчикам тем из-за произвольных включенных CSS-файлов ядра и модуля, вы всегда вынуждены делать правильные переопределения CSS, чтобы очистить / сбросить то, чтовам нужно.

Действительно, используйте первое или четвертое решение.Я сам делаю 4-е, все очищаю, сбрасываю все, потом переписываю все что нужно.Основные CSS-файлы на самом деле не являются обязательными, и на большинстве сайтов вам совершенно нечего переписывать.

Не забывайте, что в большинстве случаев вам следует использовать другую тему для пути admin и admin / *, которая будетпо крайней мере, оповестить вас о том, что вам придется переписать полную CSS-тему администратора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...