Ajouter une feuille de style pour un navigateur donné
Référence en anglais sur drupal.org : http://drupal.org/node/744328
16 Mars 2010 - 21h25
Vous pouvez ajouter une feuille de style pour un navigateur donné.
Drupal 6
Dans le fichier page.tpl.php de Garland :
<?php
...
<?php print $styles ? >
<!--[if lt IE 7]>
<?php print phptemplate_get_ie_styles(); ? >
<![endif]-->
...
?>Dans le fichier template.php de Garland :
<?php
...
function phptemplate_get_ie_styles() {
global $language;
$iecss = '<link type="text/css" rel="stylesheet" media="all" href="'. base_path() . path_to_theme() .'/fix-ie.css" />';
if ($language->direction == LANGUAGE_RTL) {
$iecss .= '<style type="text/css" media="all">@import "'. base_path() . path_to_theme() .'/fix-ie-rtl.css";</style>';
}
return $iecss;
}
...
?>Drupal 7
Drupal 7 apporte la possibilité de spécifier une clé « navigateur » quand vous appelez drupal_add_css() :
Dans le fichier template.php de Garland :
<?php
...
function garland_preprocess_html(&$vars) {
...
drupal_add_css(path_to_theme() . '/fix-ie.css', array('weight' => CSS_THEME, 'browsers' => array('IE' => 'lt IE 7', '!IE' => FALSE), 'preprocess' => FALSE));
}
...
?>Consultez la documentation de l'API pour drupal_pre_render_conditional_comments() au sujet des détails des clés IE et !IE.
Il est conseillé que le thèmes utilisent toujours drupal_add_css() pour ajouter des feuilles de style CSS, le code Drupal connaît ainsi le nombre exact de feuilles de style ajoutées. Une donnée qui peut être nécessaire lorsqu'on approche des limites d'Internet Explorer qui ne peut charger que les 31 premières balises LINK/STYLE.
- Version imprimable
- 3763 lectures
-

Commentaires
Poster un nouveau commentaire