lille-web webdesign

Body class i dit Joomla og Drupal template

Når man arbejder meget med CSS og komplicerede webdesign, begynder man ret hurtig at være afhængig af body class

I Drupal 7 indsættes i html.tpl.php

<body class="<?php print $classes; ?>" <?php print $attributes;?>>

Det giver en mange og gode informative CSS class. ("html", "front", "not-front", "logged-in" "no-sidebars", "page-node" etc.) Har man behov for class ud fra Taxonomy kan man læse mere her.

I Joomla kan man i Index.php indsætte følgende kode for at få unikke class i body.

    <?php
    $menus    
= &JSite::getMenu();
   
$menu       = $menus->getActive();
   
$pageclass = "";
      
    if (
is_object( $menu )) :
   
$params = new JParameter( $menu->params );
   
$pageclass = $params->get( 'pageclass_sfx' );
    endif;
   
?>

    </head>
    <body class="<?php echo $pageclass; ?>">

På de enkelte menupunkter i Joomla kan man tilføje et såkaldt Page Suffix som nu vises som en class i body!

Nu hvor emnet er Body Class er her en lille snedig måde at style specifikt til IE

<!--[if IE ]>
   <body class="ie">
<![endif]-->
<!--[if !IE]>-->
   <body>
<!--<![endif]-->

Denne lille snippet virker, så Internet Explorer får en class = ie på body. På den måde kan man style separat på IE. Dette er et helt kapitel for sig, og kan bestemt gøres mere elegant end denne løsning.
Med IE9 er vi efterhånden helt fri for det evige slagsmål, med at IE ikke tolker CSS rigtigt.

Tilbage