Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 05-01-2010 15:06:46

ganlhi
Membre
Date d'inscription: 05-01-2010
Messages: 15

Ajout d'une feuille de style

Bonjour à tous !

Je débute sous ZF, et je me heurte à un problème :
Pour une action, je voudrais inclure une feuille de style spécifique (en plus de celles inclues dans le layout).

Voici ce que j'ai en tête de mes fichiers layout.phtml...

Code:

<head>
    <?php echo $this->headTitle($this->title) ?>
    <?php echo $this->headLink()->headLink(array('rel' => 'shortcut icon', 'href' => $this->baseUrl().'/images/favicon.ico'), 'PREPEND')
                                ->prependStylesheet($this->baseUrl().'/css/base.css')
                                ->appendStylesheet($this->baseUrl().'/css/header.css')
                                ->appendStylesheet($this->baseUrl().'/css/footer.css') ?>
    <?php echo $this->headScript() ?>
    <?php echo $this->headMeta() ?>
</head>

...et dans le code de mon action

Code:

public function menuAction()
{
    // Append menu stylesheet
        $this->view->headLink()->appendStylesheet($this->view->baseUrl().'/css/index_menu.css');
    
        // Set title
    $this->view->title = "Menu";
}

Mais ce qu'il se passe au final, c'est que j'obtiens  ceci :

Code:

<link href="/KIWi/public/css/base.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/KIWi/public/images/favicon.ico" rel="shortcut icon" />
<link href="/KIWi/public/css/index_menu.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/KIWi/public/css/header.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/KIWi/public/css/footer.css" media="screen" rel="stylesheet" type="text/css" />

Y a-t-il moyen de contrôler l'ordre dans lequel vont apparaitre ces lignes ? D'une part il est étrange que la favicon soit placée en deuxième alors que je l'ai déclarée en premier (qui plus est avec l'option PREPEND). D'autre part, ma feuille index_menu.css n'étant pas enn dernier, son contenu spécifique est parasité par le contenu de header.css !

Merci d'avance.

Hors ligne

 

#2 05-01-2010 16:19:56

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: Ajout d'une feuille de style

normal qu'il apparaisse en 2eme :

1) tu "append" ton favicon
2) tu "prepend" base.css (prepend, rajoute en 1er) => favicon passe 2eme

A toi d'utiliser append et prepend en fonction de ce que tu veux


----
Gruiiik !

Hors ligne

 

#3 05-01-2010 16:20:24

Ph
Membre
Date d'inscription: 02-01-2010
Messages: 40

Re: Ajout d'une feuille de style

http://framework.zend.com/manual/fr/zen … lpers.html

Lire : Exemple 61.15. Utilisation basique de l'aide HeadScript

Je pense que tu trouvera ton bonheur wink

Hors ligne

 

#4 06-01-2010 10:03:05

ganlhi
Membre
Date d'inscription: 05-01-2010
Messages: 15

Re: Ajout d'une feuille de style

nORKy a écrit:

normal qu'il apparaisse en 2eme :

1) tu "append" ton favicon
2) tu "prepend" base.css (prepend, rajoute en 1er) => favicon passe 2eme

A toi d'utiliser append et prepend en fonction de ce que tu veux

Ah effectivement, je n'avais pas fait gaffe à ça smile

Par contre ça ne résout pas mon principal problème : comment faire pour que index_menu.css soit en dernier ?

Merci à vous deux.

EDIT : je n'avais pas lu l'exemple 61.15 en entier. J'ai testé ça, mais ça n'a pas résolu le problème :

Code:

public function menuAction()
{
        // Append menu stylesheet (offset 99 to be sure it is placed in last position)
        $this->view->headLink()->offsetSetStylesheet(99, $this->view->baseUrl().'/css/index_menu.css');
    
        // Set title
        $this->view->title = "Menu";
}

Dernière modification par ganlhi (06-01-2010 10:07:46)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages