Answers:
有几种方法可以将自定义CSS代码添加到特定页面。这里有两个选择:
Alt。1-页面类别
使用页面类别。在菜单项编辑器的“页面显示”选项卡下,有一个名为“页面类别”的字段。根据模板的配置方式,这会将一个类添加到您的<body>
标签(或<div class="YOURCLASS">...</div>
您的内容周围)。
然后,只需使用您指定的类在模板的CSS文件中创建一个新规则。
例如,添加mycustomclass
到菜单项中的“页面类”字段,并将其放入CSS文件中:
.mycustomclass p {font-color:red;} // Make text red on this particular page
Alt。2-自定义CSS模块
为此可以使用几个模块。一个示例是Custom CSS,该模块允许您添加任何CSS代码并将其发布到要设置样式的页面。
一个类似的选项是Custom HTML Advanced,该模块可让您向页面添加HTML,JavaScript 和CSS。该代码可以自动添加到<head>
标签中。
Alt 3-加载其他CSS样式表
另一种选择是检查模板index.php
文件中的当前菜单项ID ,并在需要时加载另一个CSS样式表:
<?php
$currentMenuId = JSite::getMenu()->getActive()->id ;
if ($currentMenuId == "14") {
echo '<link rel="stylesheet" type="text/css" href="mystyle.css">';
}
?>
我最喜欢的方法之一是为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">
现在,您可以使用上述类在每页上创建自定义的特定样式。
这是做同一件事的另一种方法。
超过文档类型:
<?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中。任何没有类的菜单项都将自动成为body id =“ default”。
您也可以尝试使用此扩展程序为菜单项分配不同的样式表:http : //extensions.joomla.org/extensions/extension/style-a-design/templating/css2switch-basic
问候。