-1

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

4

3 回答 3

0

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

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

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

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

另一方面,我很难相信您在任何标准 CSS 教程中都找不到有关此主题的任何信息。下次试试谷歌。

于 2013-08-26T07:16:23.807 回答
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");

希望这可以帮助

于 2013-08-26T09:19:23.020 回答
0

问题是添加 bootstrap.min.css 文件是什么?我想你必须搜索类似的代码

JHtmlBootstrap::loadCss();

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

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();
}
于 2013-08-26T10:50:47.210 回答