Joomla 3:在主页上隐藏课程

时间:2014-06-26 08:28:52

标签: php html css joomla content-management-system

我想只在主页上隐藏课程。

<div class="search-wrapper">

.search-wrapper {
    background: none repeat scroll 0 0 #3d4895;
    height: 50px;
    margin-top: 10px;
    width: 100%;
}

所以这必须显示在所有页面上。主页除外。我无法做到这一点。

我创建了HOME PAGE菜单项以获得页面类,但仍然不能仅在主页上定位.seacrh-wrapper。

3 个答案:

答案 0 :(得分:2)

如果可能,请创建要隐藏模块的部分,并在模板中设置相应的模块区域。这样,您可以将其分配给除主页之外的所有页面。这种方法的好处是页面不会产生不必要的隐藏内容。

如果失败,请将以下内容添加到模板中:

<?php
$pageclass="";
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault()) {
       $pageclass="homepage";
}
?>

然后,在你的身体标签......

<body class="<?php echo $pageclass; ?>">

这将添加一个&#34;主页&#34;到主页上的body标签。然后,样式可以像这样添加到主页......

.homepage .search-wrapper {
    display:none;
}

不需要javascript。

答案 1 :(得分:0)

您必须使用jquery,请使用以下行:

//Here you check if the user is on the homepage
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault()) {
    //This line makes it hide the class
    $('.search-wrapper').css('display','none');
}

答案 2 :(得分:0)

最简单的方法 - 创建仅发布到主页的自定义HTML模块。 扩展程序 - &gt;模块管理器 - &gt;新 - &gt;自定义HTML

在该模块中,切换到代码视图而不是wysiwyg编辑器,并创建样式“块”。您需要做的就是使用更具体的CSS规则来否决样式表中的css。

假设您的样式表目前仅引用一个类 - 那么预先挂起来自任何父容器的id为一个元素的选择器将更加“具体”。

<style type="text/css">
#some-id .search-wrapper {display:none;}
</style>

显然将'some-id'替换为父/祖父/ etc元素的实际id。