2009-07-24 6 views
3

Je voudrais écrire une feuille de style interne à vue dans le Zend Framework en tant que telleComment écrire des feuilles de style internes dans Zend Framework?

<head> 
    <style type="text/css" media="all"> 
     body{ background: #FFFFFF; } 
    </style> 
</head> 

Je comprends que je peux écrire une feuille de style externe à l'aide $this->view->headLink()->appendStylesheet('style.css');

Cependant, je ne peux pas trouver un moyen d'écrire une feuille de style interne. Des idées?

+0

S'il vous plaît préciser ce que vous entendez par « feuille de style interne ». – hobodave

+0

a édité la question pour clarifier la feuille de style interne – Marcel

Répondre

13

Ce que vous cherchez s'appelle le helper HeadStyle. Sa documentation manuelle peut être trouvée here.

L'API aide HeadStyle est compatible sera tous les Head* aides de vue, et fonctionne en tant que tel (ce qui suit suppose que vous êtes dans un ViewScript):

// Putting styles in order: 
// These methods assume the a string argument containing the style rules. 

// place at a particular offset: 
$this->headStyle()->offsetSetStyle(100, $customStyles); 

// place at end: 
$this->headStyle()->appendStyle($finalStyles); 

// place at beginning 
$this->headStyle()->prependStyle($firstStyles); 

// Or capturing a block of styles 

<?php $this->headStyle()->captureStart() ?> 
body { 
    background-color: <?php echo $this->bgColor ?>; 
} 
<?php $this->headStyle()->captureEnd() ?> 

Notez que vous ne pas inclure les <style> balises dans une de cette entrée. Cela est généré par l'assistant lui-même. Ensuite, dans votre mise en page, tout simplement echo l'aide où vous souhaitez sa sortie:

<head> 
    <?php echo $this->headLink() ?> 
    <?php echo $this->headStyle() ?> 
</head> 
+0

Merci. $ this-> headStyle() -> captureStart() et $ this-> headStyle() -> captureEnd() était exactement ce que je cherchais. – Marcel

Questions connexes