2011-06-22 21 views
5

私はZendフレームワークに新しく、PHPでログインフォームを作成しました。そのCSSスタイルを設定したいのですが、設定方法はわかりません。あなたのフォーム要素を作成しているときZendフォームのCSSを設定する方法は?

いくつかのコードまたはリンクを提案してください.....アドバンス

答えて

6

おかげで、あなたは彼らに名を与えなければならない:

$form->addElement('text', 'username'); 
$form->addElement('password', 'password'); 
$form->addElement('submit', 'submit'); 

はこれらになります要素のID。あなただけの他の要素と同様にCSSセレクタを使用して、これらの要素をターゲットにすることができます:

input#username, 
input#password 
{ 
    width:200px 
} 
input#username 
{ 
    background-color:yellow; 
} 

また、フォームに名前を付けることができます。

もう一つの方法は、あなたのフォーム要素のクラスを与えることです:あなたはZFでより多くの経験を積んだようになると

$element->setAttrib('class', 'username'); 

はあなたがform element decoratorsを見て開始したいことがあります。これらを使用すると、エラーメッセージ、ラベル、余分なdivなど、フォーム要素の周りのものを表示できます。

3

あなたのフォームのスタイリングにはあまりにも特定的ではないことをお勧めします。組み込みのデコレータのほとんどはかなり基本的なマークアップです。 CSSクラスでミックスを開始すると、フォームは重すぎて表示レイヤーが重くなり、再利用が困難になります。たとえば、モバイルとフルブラウザの両方で使用できます。

代わりに、フォームをdiv内にエコーし、CSSを使用して子要素をスタイル設定します。

<div class="login-form"> 
    <?php echo $form ?> 
</div> 

div.login-form input[type=text] { width: 200px; } 
関連する問題