Empfehlungen: Erweiterte Suche

HTMLHelper::style

Unterstützung der Daten-Formatierung in den Views (DRY)

HTMLHelper::style

Beitragvon Veit » So 8. Feb 2009, 16:26

Hallo Zusammen,

ich versteh den Sinn von dem HTMLHelper::style nicht. Beziehungsweise, ich glaube ich verwende ihn falsch, und deswegen gibt die Verwendung nicht wirklich Sinn.

Ziel ist es eine Textausgabe, nehmen wir mal einen Link, spezifisch zu stylen, z.B. ROT. Normal sind per CSS z.B. blau, der eine soll aber mal rot sein.

Code: Alles auswählen

<?php
   $red = $html->style(array('color' => '#f00'), true);
   echo $red;
   
   echo $html->link('Anzeigen', array('controller'=>'test', 'action'=> 'schow'), array('style' => $red)) ?>
?>
 


Ergebnis: Der Link wird ROT angezeigt, und davor steht die Inline Styleanweisung: color:#f00;

Einfach wärs doch einfach gleich die Style Anweisung ohne Helper in das Array zu schreiben, etwas so:

Code: Alles auswählen
<?php
    echo $html->link('Anzeigen', array('controller'=>'test', 'action'=> 'schow'), array('style' => 'color:#f00')) ?>
?>


Ergebnis: Der Link wird ROT angezeigt.
Warum also den Umstand über Style-Helper? Es beschleicht mich das Gefühl das der Helper so falsch eingesetzt wurde, aber er hat ja auch keinen Inhalts Parameter, bei dem ein Text, der eben so und so gestylt werden soll angezeigt wird.

Vielleicht weiß ja jemand den Sinn oder Unsinn von dem HTMLHelper::style erklären.
Danke
Veit
 
Beiträge: 4
Registriert: So 8. Feb 2009, 16:02
Wohnort: Bei Nürnberg
CakePHP-Version: 1.2.0.7962
OS: Mac OS X 10.5.6

Re: HTMLHelper::style

Beitragvon Veit » Mo 2. Mär 2009, 01:31

Nun, ich glaube das die Fragestellung an sich ein bisschen unsinnig war. Das ist auch schon die Lösung.
Die Verwendung des Style-Helpers wie obigen Beispiel ist reichlich unnütz.

Seine wahre Rolle kann er ausspielen wenn er in Zusammenhang größeren Umfangs verwendet wird. Soll heißen, der Style-Helper, ist immer dort sinnvoll, wo sonst umständlich ein <div> um das zubearbeitende Element gepackt werden müsste um das Element zu stylen. Beispiel? Na wie es die Cake Doc schon ganz gut hinbekommen hat, in einem Formular-Element z.B., wenn solchen eine bestimmte Klasse bekommen soll oder ähnliches:
Code: Alles auswählen
<?php
echo $form->input('name', array('div' => array('id' => 'mainDiv', 'style' => 'display:block')));
?>

Würde dies hier ergeben:
Code: Alles auswählen
<div class="input text" id="mainDiv" style="display:block">
    <label for="UserName">Name</label>
    <input name="data[User][name]" type="text" value="" id="UserName" />
</div>


Man sieht also, eine sinnvolle Sache, um einfach und schnell in Elementen selbst Style-Optionen zuweisen zu können.

So würde ich mal versuchen die Sache zu erklären.
Veit
 
Beiträge: 4
Registriert: So 8. Feb 2009, 16:02
Wohnort: Bei Nürnberg
CakePHP-Version: 1.2.0.7962
OS: Mac OS X 10.5.6


Zurück zu Helper

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast