【问题标题】:Make joomla module span multiple columns使 joomla 模块跨越多列
【发布时间】:2026-01-10 12:10:02
【问题描述】:

我一直在网上搜索我的问题的答案,但无济于事。

我的网页在 Joomla 1.5 上运行,首页目前有 3 列/位置布局,我可以在其中放置模块。

但是,我想要一个跨越两个最右边位置的模块,同时将它们下方的模块保持在常规的“三列布局”中。 IE。这就是我想要的样子:

[模块][-------模块-----]

[模块][模块][模块]

[模块][模块][模块]

我的猜测是我需要定义一个跨越两列的新位置。是这样吗?如果我想确保新的、更宽的模块下方的模块仍处于其常规布局中,我该怎么做?

谢谢!

【问题讨论】:

    标签: html css joomla module position


    【解决方案1】:

    这取决于您的模板。 joomla 驱动的网站上的东西被放置在位置。

    在任何情况下,如果您要隐藏的位置是在一个带有类的 div 中,比如说

    display: none
    

    然后给其他 2 个模块 50% 的宽度,如果它们还没有,则将它们向左浮动。

    float: left;
    width:50%
    

    您可能还想在那之后(在第 3 列开始之前)清除浮动,方法是创建一个带有 clear 类的 div 并清除浮动:

    clear:both;
    

    【讨论】:

    • 谢谢,我会试试这个并回复你!
    【解决方案2】:

    是的,这可以在模板中完成,例如使用 countmodules() 查看是否要显示位置并相应地安排位置,例如下面显示了如何根据模块是否放置在“右”列中来使页面具有一列或两列。如果“右”列中有模块,则显示两个 div(css 用于调整它们的大小),如果右列中没有任何内容,则显示全宽主列。

    <?php if($this->countModules('right')) : ?>
    <div id="divMainContent">
        <jdoc:include type="modules" name="user9" style="xhtml" />
        <jdoc:include type="component" />
        <jdoc:include type="modules" name="bottombanner" style="xhtml" />
    </div> <!-- end maincontent -->
    <div id="divRight">
        <jdoc:include type="modules" name="right" style="xhtml" />
        <jdoc:include type="modules" name="banner" style="xhtml" />
    </div>
    <?php else: ?>
        <div id="divMainContentWide">
            <div id="divTopWide">
                <jdoc:include type="modules" name="user9" style="xhtml" />
            </div>
        </div>
    <?php endif; ?>
    

    【讨论】: