我想只在主页上隐藏课程。
<div class="search-wrapper">
.search-wrapper {
background: none repeat scroll 0 0 #3d4895;
height: 50px;
margin-top: 10px;
width: 100%;
}
所以这必须显示在所有页面上。主页除外。我无法做到这一点。
我创建了HOME PAGE菜单项以获得页面类,但仍然不能仅在主页上定位.seacrh-wrapper。
答案 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。