Joomla之门广告招商,PR=5,alexa 排名2万1

作者 主题: 请问 模块css后缀 是什么意思?  (阅读 16034 次)

dwqxj

  • 游客
请问 模块css后缀 是什么意思?
« 于: 2008-07-28, 11:25 »
1.5.3,在left中的,如何为2个mod_mainmenu设置不同的风格?
我的意思是:2个菜单模块,都是在left中,都是<DIV class=module_menu><DIV>这样的两个模块,
在css中不容易标识出来,如何设置成不同的风格呢,比如H3不同,背景不同...?
waitting......
« 最后编辑时间: 2008-07-28, 15:21 作者 dwqxj »


白建鹏

  • Administrator
  • Hero Member
  • *****
  • 来自:
  • 帖子: 7594
  • 声望: +36/-0
  • 上次登录:今天 16:51
  • 注册于:2006-11-09, 20:32
  • 分享,是一种美德 !
    • 白建鹏的个人网站
    • 电子邮件
我想有必要介绍一下 Joomla! 在模块参数中的“模块 CSS 类后缀”这个参数。

例如,在 Joomla! 1.5 后台的“扩展 -> 模块管理 -> 主菜单”设置页面,右边的“高级参数设置”中,有一项“模块CSS后缀”,指的就是这个模块的CSS类后缀

这个参数有什么用?怎么用?

这个参数就是用来方便用户针对某个特定模块修改其 CSS 外观的。也就是说,你可以单独对一个模块指定不同的CSS。

用法举例:

还以上面的“主菜单”模块为例。这里的“模块CSS后缀”默认是 _menu,对应的 CSS 语句(在 /templates/当前模板/css/template.css 文件中)是:div.module_menu **** 。

星号表示其它的附加标记,如 ul 或者 li 或者 h3 等等,但是其对应的模块定义就是 div.module_menu 。

现在你的问题是:如何对第二个菜单模块指定不同的 CSS ?

解决办法:对第二个菜单模块,将其“模块CSS后缀”修改为 _mymenu2 ,然后在上面的 CSS 文件中复制所有 div.module_menu 开头的代码,并修改其开头为 div.module_mymenu2 ,然后再修改其CSS定义即可。

同理,你可以单独指定 menu3 、menu4 甚至 module-2 、module-3 等等任何一个模块的 CSS。

使用 Joomla! 1.0 的用户请注意:J1.0 的模块也可以按照上述方法修改单个模块的 CSS ,不过,“后缀”参数那里不需要填写 _ 下划线符号,只能直接填写后缀如 customName,然后在 CSS 文件(/templates/当前模板/css/template.css)中找到 moduletable (这是默认的模块定义语句),复制一份,修改名称为 moduletable-customName,然后修改 CSS 代码即可。

看清楚了吗?也就是说,在 J1.0 中,用户只需要填写后缀名称,系统会自动寻找 “div.moduletable-自定义名称”这个CSS片段。这里是短划线(-),不是下划线(_)。


dwqxj

  • 游客
老大,你要我说什么好呢,我想了几天的问题,你几分钟就解决了。谢谢!
通过你的讲解,明白了其实通过对模块的CSS类后缀的设置,前台的模块的风格可以随心所欲的定制。
再次感谢!感谢joomla之门!

另:在joomla中,1.5.3,默认情况:所有的mod_mainmenu,都是<DIV class=module_menu></DIV>

但是热点新闻、最新新闻,是<DIV class=moduletable></DIV>。(这个模块Advertisement,<DIV class=moduletable_text></DIV>,按上面所述,也应该属于<DIV class=moduletable></DIV>)

有的是<DIV class=module></DIV>,

不知有什么不同?如何理解?常用的哪些模块分属哪些不同的div class=*****?
« 最后编辑时间: 2008-07-28, 16:13 作者 dwqxj »

白建鹏

  • Administrator
  • Hero Member
  • *****
  • 来自:
  • 帖子: 7594
  • 声望: +36/-0
  • 上次登录:今天 16:51
  • 注册于:2006-11-09, 20:32
  • 分享,是一种美德 !
    • 白建鹏的个人网站
    • 电子邮件
多谢你的补充!

那么,我们的对策也相应补充一下:对于 class=moduletable 的模块,就在 CSS 中新增 moduletable_customName {} 来定义,对于 class=module 的模块,可以使用 module_customName {} 来定义。

我没有测试过,只是推理一下。你可以实际测试一下看看。欢迎测试后在这里继续反馈结果。

dwqxj

  • 游客
看来白老大分析正确,我的测试:
热点新闻、最新新闻,都是<DIV class=moduletable></DIV>
在后台对最新新闻 模块css后缀 参数设置为 “_test”
并在css中设置了不同的风格,实际效果达到了预期。实现了2个moduletable的不同的风格;
由此看来,看来对于module也是一样。
效果如下:

白建鹏

  • Administrator
  • Hero Member
  • *****
  • 来自:
  • 帖子: 7594
  • 声望: +36/-0
  • 上次登录:今天 16:51
  • 注册于:2006-11-09, 20:32
  • 分享,是一种美德 !
    • 白建鹏的个人网站
    • 电子邮件
感谢反馈!这样一来,我们对于 “模块CSS类后缀”这个参数的理解就全面了。

Waikwok

  • Newbie
  • *
  • 来自:
  • 帖子: 6
  • 声望: +0/-0
  • 上次登录:2009-11-27, 00:09
  • 注册于:2007-07-27, 14:48

    littlesky

    • Newbie
    • *
    • 来自:
    • 帖子: 7
    • 声望: +0/-0
    • 上次登录:2008-12-21, 20:40
    • 注册于:2008-09-27, 14:57
      软件注释告诉我说:

      这是模块显示风格所对应CSS样式类的后缀,利用它可以个性化模块的显示风格


      但是我试一阵,发现唯一可以个性化的就是后缀的命名,在模板的CSS样式表里也找不到这样的后缀。


      请问这个东西怎么才能个性化点别的东西!

      yooyooh

      • 汉化功臣
      • Sr. Member
      • *
      • 来自:
      • 帖子: 383
      • 声望: +10/-0
      • 上次登录:2010-08-17, 13:18
      • 注册于:2008-01-09, 14:35
        joomla越看越觉得强大,无论扩充性、自由度还是安全性,都没的说。能发挥多大效用的问题就在于你理解了多少。
        Every man dies, Not every man really lives.

        kikor

        • Newbie
        • *
        • 来自:
        • 帖子: 30
        • 声望: +1/-0
        • 上次登录:2009-04-26, 10:47
        • 注册于:2008-10-15, 10:49
          • 玖玖健康网
        joomla的模板自定义,特别是module的自定义功能确实很灵活,有多个层面可以进行OVERRIDE。

        不过对于message,component,head这3个类型,特别是head和message除了直接修改LIBRARIES我还没有找到类似MODULE那样灵活的风格,而COMPONENT似乎也只有自定义输出方式,而没有渲染风格的修改。难道必需在模板的INDEX.PHP里面控制了?或者自己写module而不要这2个类型。

        star

        • 捐赠会员
        • Full Member
        • *
        • 来自:
        • 帖子: 110
        • 声望: +2/-0
        • 上次登录:2010-09-02, 13:51
        • 注册于:2008-09-10, 17:59
          • 电子邮件
        • 权限至: 2011年05月04日
        使用 Joomla! 1.0 的用户请注意:J1.0 的模块也可以按照上述方法修改单个模块的 CSS ,不过,“后缀”参数那里不需要填写 _ 下划线符号,只能直接填写后缀如 customName,然后在 CSS 文件(/templates/当前模板/css/template.css)中找到 moduletable (这是默认的模块定义语句),复制一份,修改名称为 moduletable-customName,然后修改 CSS 代码即可。(老大能不能详细地再介绍一次)

        可是在J1.0里,引用模块直接通过以下代码来引用的,那要如何对其进行自定义模块CSS后缀?
        <div id="leftcolumn">               
        <?php mosLoadModules('left' , '2'); ?>
        <?php /*  <? $sg = 'banner'; include "templates.php"; ?> */ ?>
        </div>

        还有一个问题就是,mosLoadModules( $position_name [, $style] ),后面的$style与CSS后缀有什么联系吗?是不是起到定义的作用?
        « 最后编辑时间: 2008-10-29, 17:21 作者 star »

        lin4007

        • Newbie
        • *
        • 来自:
        • 帖子: 9
        • 声望: +0/-0
        • 上次登录:2009-01-28, 23:47
        • 注册于:2008-12-03, 08:08
          • 电子邮件
        模块编辑中的CSS
        « 回复 #11 于: 2008-12-12, 01:42 »
        在“模块”----“编辑”

             里面   有个“参数设置” 下   有个“CSS后缀”的选项


              请问   这个“CSS后缀”选项 是什么功能


                           是能够选择改变整个版面排版样式的吗。

        jade

        • Newbie
        • *
        • 来自:
        • 帖子: 41
        • 声望: +3/-0
        • 上次登录:2009-05-25, 23:41
        • 注册于:2008-07-22, 18:05
          • JoomlaChoice
        Latest News plus date module for J 1.5 ,这个是我看到近期最好的一个模块,推荐大家使用。
        http://www.templateplazza.com/component/option,com_remository/Itemid,7/func,fileinfo/id,159/
        [img size=150]http://extensions.joomla.org/components/com_mtree/img/listings/5434_latestnewsplusdate.gif[/img]

        另外想问的就是,有没有办法把自己设计的CSS样式,套入到这些模块里面,如果可以的话,我们就可以有很多好看的CSS样式用在模块上面了,大家看看能不能把这些形式放到Latest News plus date module里面了,预览+下载!:laugh:
        http://www.joomla1st.com/css/
        http://www.joomla1st.com/css/index.zip
        不贪加官再封爵位 并未见有所作为 闲人或许总给看低 没与你争辉 处事深不见底

        白建鹏

        • Administrator
        • Hero Member
        • *****
        • 来自:
        • 帖子: 7594
        • 声望: +36/-0
        • 上次登录:今天 16:51
        • 注册于:2006-11-09, 20:32
        • 分享,是一种美德 !
          • 白建鹏的个人网站
          • 电子邮件
        我刚才看了一下,Latest News plus date 这个模块有一个参数“模块 CSS 类后缀”,那么通过设定这个后缀就能实现针对单个模块的个性化样式。参看本话题前面讨论。

        CainLai

        • Newbie
        • *
        • 来自:
        • 帖子: 20
        • 声望: +0/-0
        • 上次登录:2009-02-12, 16:00
        • 注册于:2009-01-07, 13:58
          我看了置顶的那个帖子,没有完全看懂,帖子里面mainmenu的例子后缀_menu 白老大说在template.css中找到div.module_menu开头的,但是我没有找到,只找到了类似这样的:
          #leftcolumn div.module_menu, #rightcolumn div.module_menu, #leftcolumn div.module, #rightcolumn div.module {
             margin:0px;
             padding:0 0 10px 0;
             text-align:center;
             width:201px;
          }
          我也试过按帖子里面的说法把这些粘贴出来然后改成自己的后缀,但是没有成功,我想要改默认自带的login模块的CSS后缀,改怎么做啊?