如何在Joomla中停止特定页面的CSS?

时间:2013-08-26 07:10:04

标签: css joomla

我想在Joomla 3.1中为我的特定页面停止media / jui / css / bootstrap.min.css, 因为我已经在其中插入了一些Css文件,但是在bootstrap.min.css之后的同一页面。 所以请帮助停止bootstrap.min.css

3 个答案:

答案 0 :(得分:0)

您可以删除HTML文档头部中不需要的css文件的链接,以防止导入。

级联样式表的调用部分是因为可以导入多个工作表,并且将使用具有最高优先级的声明。可以在任何css教程中找到css优先级的完整定义。

让自己的样式表先于标准模板的一种方法是在Joomla导入的模板css之后导入它。这样,根据优先顺序,您的样式表将是最近声明的规则,并且应该在另一个上执行。您还可以在不超出模板其余部分的情况下进行所关注的更改。

要获得更具体情况的答案,如果您告诉我们您尝试过的内容或包含一些代码,将会很有帮助。

另一方面,我发现很难相信你在任何标准的CSS教程中都找不到关于这个主题的任何信息。下次尝试使用Google。

答案 1 :(得分:0)

使用扩展程序可能有更好的解决方案,但您可以尝试以下方法。打开模板的 index.php ,找到导入CSS文件的行并替换为以下内容:

$app   = JFactory::getApplication();
$menu   = $app->getMenu()->getActive()->id;
if ($menu !== 12){
    $doc->addStyleSheet(JUri::root() . "media/jui/css/bootstrap.min.css");
}

您需要将 12 更改为您要从中移除CSS文件的菜单项的ID。

如果尚未定义$doc,您可以在if statement内添加此内容:

$doc = JFactory::getocument();

或替换为以下内容:

JHtml::stylesheet(Juri::root() . "media/jui/css/bootstrap.min.css");

希望这有帮助

答案 2 :(得分:0)

问题是添加bootstrap.min.css文件是什么?我想你必须搜索像

这样的代码
JHtmlBootstrap::loadCss();

因为在Joomla 3中,模板必须在自己的CSS文件中包含引导程序。如果不是这种情况,它可以包含默认的bootstrap文件和我之前提到的代码。

不应该像

那样加载Bootstrap
JFactory::getocument()->addStyleSheet(JUri::root() . "media/jui/css/bootstrap.min.css");

你必须使用的是

JHtmlBootstrap::loadCss();

但是这个函数只应该从模板index.php文件调用而不是扩展名,相信我,我知道我在说什么https://groups.google.com/d/msg/joomla-dev-general/c--P-HTzMzc/6fEujLeE4KgJ: - )

@Lodder你应该使用

$app   = JFactory::getApplication();
$menu   = $app->getMenu()->getActive()->id;
if ($menu !== 12)
{
    JHtmlBootstrap::loadCss();
}