Добавление пользовательского стиля CSS на некоторых моих страницах
Я хотел бы добавить пользовательский стиль CSS на некоторые мои страницы, чтобы дать им уникальный стиль и переопределить стиль шаблона по умолчанию.
Как я могу достичь этого в Joomla?
4 ответа
Существует несколько способов добавить пользовательский CSS-код к определенной странице. Вот несколько альтернатив:
Alt. 1 - Класс страницы
Используйте классы страниц. В редакторе элементов меню на вкладке «Отображение страницы» есть поле «Класс страницы». Это добавит класс в ваш тег <body>
(или <div class="YOURCLASS">...</div>
вокруг вашего содержимого ), в зависимости от того, как настроен ваш шаблон.
Пользовательский CSS , модуль, который позволяет вам добавлять любой код CSS и публиковать это на страницы, которые вы хотите стилизовать.
Аналогичная опция Пользовательский HTML Advanced , модуль, который позволяет добавлять на ваши страницы HTML, JavaScript и CSS . Код может быть добавлен в тег mycustomclass
автоматически.
Alt 3. - загрузить дополнительную таблицу стилей CSS
Другой альтернативой является проверка текущего идентификатора элемента меню в файле .mycustomclass p {font-color:red;} // Make text red on this particular page
вашего шаблона и при необходимости загрузка другой таблицы стилей CSS:
<head>
Один из моих любимых подходов - создание динамических классов для элемента body.
Итак:
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
$active = $menu->getActive();
$class = $active->alias . " pageid-" . $active->id;
?>
<body class="<?php echo $class; ?>">
Некоторые примеры того, как будет выглядеть вышеприведенный код:
Домашняя страница:
<body class="home pageid-13">
О нас страница:
<body class="about-us pageid-15">
Теперь вы можете создавать специальные стили на странице, используя вышеуказанные классы.
Это еще один способ сделать то же самое.
Выходит над doctype:
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu()->getActive();
$pageclass = '';
if (is_object($menu))
$pageclass = $menu->params->get('pageclass_sfx');
?>
Идет в вашем индексе, где ваш класс тела:
<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>">
Теперь все, что вы добавите в класс страницы элемента меню, появится в id тела. Любой элемент меню без класса автоматически будет id тела "default".
Также вы можете попробовать с этим расширением, чтобы назначить разные таблицы стилей вашим пунктам меню: http://extensions.joomla.org/extensions/extension /стиль-а-дизайн /шаблонный /css2switch основного
С уважением.