You are here

drupal中如何调用额外的CSS文件

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2008-09-11 00:16

使用drupal_add_css()函数可以将其它的样式表添加到样式表数组中去:

<?php
// Repeat this line for every CSS file added.
drupal_add_css(path_to_theme() . '/example.css', 'theme', 'all', TRUE);
// Reassemble the $styles snippet to include the new files.
$styles = drupal_get_css();
?>

 

在这个例子中,我们是从主题文件夹下取得的example.css文件.当然你也可以把样式表放到files目录下,这样就不用使用path_to_theme()函数了,此时你就可以直接这样用'files/subdirectory/example.css'.

 

drupal_add_css()函数的参数分析:

  1. 1,样式表文件的路径(相对于base_path()的路径)
  2. 2,要添加样式表的类型(module 或者theme)

    •     样式表的调用时有顺序的,首先是系统的样式表,接着是模块的样式表,最后是主题的样式表.如果你想使用样式表覆写以前的CSS的话,你可以选择使用theme选项,这样它将处于数组的最后面,因此也将被最后调用。
  3. 3,样式表所应用的Media(媒体)(all, screen, print, handheld,等等)
  4. 4,最后是预处理选项(TRUE, FALSE),如果在管理界面的性能部分(admin/settings/performance)如果启用了这一特性的话,将会对样式表进行聚合和压缩。

 

 

对于Drupal 4.7.x

<?php
print $head;
print theme('stylesheet_import', base_path() . path_to_theme() . '/your_extra.css');
print $styles;
?>

因此,这就是样式表的最终顺序:

  1. 1,drupal.css
  2. 2,模块CSS(例如,event.module的event.css)
  3. 3,主题CSS(例如,your_extra.css)
  4. 4,样式CSS(来自任何主题的style.css文件)

样式表可以对前面的CSS规则进行覆写(例如,style.css可以覆写它前面的所有的CSS,除了用户CSS)。

相关链接: http://drupal.org/node/66122 , Think in Drupal

Drupal版本: