使用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,样式表文件的路径(相对于base_path()的路径)
-
2,要添加样式表的类型(module 或者theme)
-
样式表的调用时有顺序的,首先是系统的样式表,接着是模块的样式表,最后是主题的样式表.如果你想使用样式表覆写以前的CSS的话,你可以选择使用theme选项,这样它将处于数组的最后面,因此也将被最后调用。
-
样式表的调用时有顺序的,首先是系统的样式表,接着是模块的样式表,最后是主题的样式表.如果你想使用样式表覆写以前的CSS的话,你可以选择使用theme选项,这样它将处于数组的最后面,因此也将被最后调用。
-
3,样式表所应用的Media(媒体)(all, screen, print, handheld,等等)
- 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,drupal.css
-
2,模块CSS(例如,event.module的event.css)
-
3,主题CSS(例如,your_extra.css)
-
4,样式CSS(来自任何主题的style.css文件)
样式表可以对前面的CSS规则进行覆写(例如,style.css可以覆写它前面的所有的CSS,除了用户CSS)。