|
|
@@ -1,12 +1,12 @@
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!-- Reviewed: no -->
|
|
|
-<!-- EN-Revision: 19389 -->
|
|
|
+<!-- EN-Revision: 20143 -->
|
|
|
<sect3 id="zend.view.helpers.initial.headstyle">
|
|
|
<title>HeadStyle ヘルパー</title>
|
|
|
|
|
|
<para>
|
|
|
- HTML の <code><style></code> 要素を使用して、
|
|
|
- <acronym>CSS</acronym> スタイルシートを HTML の <code><head></code>
|
|
|
+ HTML の <emphasis><style></emphasis> 要素を使用して、
|
|
|
+ <acronym>CSS</acronym> スタイルシートを HTML の <emphasis><head></emphasis>
|
|
|
要素に埋め込みます。
|
|
|
</para>
|
|
|
|
|
|
@@ -15,32 +15,44 @@
|
|
|
|
|
|
<para>
|
|
|
外部スタイルシートの読み込み用の
|
|
|
- <code><link></code> 要素を作成する場合は
|
|
|
+ <emphasis><link></emphasis> 要素を作成する場合は
|
|
|
<link linkend="zend.view.helpers.initial.headlink">HeadLink</link>
|
|
|
を使用する必要があります。スタイルシートをインラインで定義したい場合に
|
|
|
- <code>HeadStyle</code> を使用します。
|
|
|
+ <classname>HeadStyle</classname> を使用します。
|
|
|
</para>
|
|
|
</note>
|
|
|
|
|
|
<para>
|
|
|
- <code>HeadStyle</code> ヘルパーがサポートするメソッドは次のとおりです。
|
|
|
+ <classname>HeadStyle</classname> ヘルパーがサポートするメソッドは次のとおりです。
|
|
|
これらによってスタイルシート宣言の設定や追加を行います。
|
|
|
</para>
|
|
|
|
|
|
<itemizedlist>
|
|
|
- <listitem><para><code>appendStyle($content, $attributes =
|
|
|
- array())</code></para></listitem>
|
|
|
- <listitem><para><code>offsetSetStyle($index, $content, $attributes =
|
|
|
- array())</code></para></listitem>
|
|
|
- <listitem><para><code>prependStyle($content, $attributes =
|
|
|
- array())</code></para></listitem>
|
|
|
- <listitem><para><code>setStyle($content, $attributes =
|
|
|
- array())</code></para></listitem>
|
|
|
+ <listitem>
|
|
|
+ <para>
|
|
|
+ <command>appendStyle($content, $attributes = array())</command>
|
|
|
+ </para>
|
|
|
+ </listitem>
|
|
|
+ <listitem>
|
|
|
+ <para>
|
|
|
+ <command>offsetSetStyle($index, $content, $attributes = array())</command>
|
|
|
+ </para>
|
|
|
+ </listitem>
|
|
|
+ <listitem>
|
|
|
+ <para>
|
|
|
+ <command>prependStyle($content, $attributes = array())</command>
|
|
|
+ </para>
|
|
|
+ </listitem>
|
|
|
+ <listitem>
|
|
|
+ <para>
|
|
|
+ <command>setStyle($content, $attributes = array())</command>
|
|
|
+ </para>
|
|
|
+ </listitem>
|
|
|
</itemizedlist>
|
|
|
|
|
|
<para>
|
|
|
すべての場合において、<varname>$content</varname> には実際の <acronym>CSS</acronym> 宣言を指定します。
|
|
|
- <varname>$attributes</varname> には、<code>style</code> タグに追加したい属性があれば指定します。
|
|
|
+ <varname>$attributes</varname> には、<property>style</property> タグに追加したい属性があれば指定します。
|
|
|
lang、title、media そして dir のすべてが使用可能です。
|
|
|
</para>
|
|
|
|
|
|
@@ -48,7 +60,7 @@
|
|
|
<title>条件コメントの設定</title>
|
|
|
|
|
|
<para>
|
|
|
- <code>HeadStyle</code> では、script タグを条件コメントで囲むことができます。
|
|
|
+ <classname>HeadStyle</classname> では、script タグを条件コメントで囲むことができます。
|
|
|
そうすれば、特定のブラウザでだけスクリプトを実行しないこともできます。
|
|
|
これを使用するには conditional タグを設定し、条件をメソッドコール時の
|
|
|
<varname>$attributes</varname> パラメータで渡します。
|
|
|
@@ -64,7 +76,7 @@ $this->headStyle()->appendStyle($styles, array('conditional' => 'lt IE 7'));
|
|
|
</note>
|
|
|
|
|
|
<para>
|
|
|
- <code>HeadStyle</code> はスタイル宣言のキャプチャも行います。
|
|
|
+ <classname>HeadStyle</classname> はスタイル宣言のキャプチャも行います。
|
|
|
これは、宣言をプログラム上で作成してからどこか別の場所で使いたい場合に便利です。
|
|
|
使用法は、以下の例で示します。
|
|
|
</para>
|
|
|
@@ -78,21 +90,44 @@ $this->headStyle()->appendStyle($styles, array('conditional' => 'lt IE 7'));
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- <code>HeadStyle</code> は <methodname>append()</methodname> や
|
|
|
+ <classname>HeadStyle</classname> は <methodname>append()</methodname> や
|
|
|
<methodname>offsetSet()</methodname>、<methodname>prepend()</methodname>、そして <methodname>set()</methodname>
|
|
|
をそれぞれオーバーライドして、上にあげた特別なメソッドを使用させるようにします。
|
|
|
- 内部的には、各項目を <code>stdClass</code> のトークンとして保管し、
|
|
|
+ 内部的には、各項目を <property>stdClass</property> のトークンとして保管し、
|
|
|
あとで <methodname>itemToString()</methodname> メソッドでシリアライズします。
|
|
|
これはスタック内の項目についてチェックを行い、
|
|
|
オプションでそれを修正したものを返します。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- <code>HeadStyle</code> ヘルパーは、
|
|
|
+ <classname>HeadStyle</classname> ヘルパーは、
|
|
|
<link linkend="zend.view.helpers.initial.placeholder">Placeholder
|
|
|
ヘルパー</link> の具象実装です。
|
|
|
</para>
|
|
|
|
|
|
+ <!-- TODO : to be translated -->
|
|
|
+ <note>
|
|
|
+ <title>UTF-8 encoding used by default</title>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ By default, Zend Framework uses <acronym>UTF-8</acronym> as its default encoding, and,
|
|
|
+ specific to this case, <classname>Zend_View</classname> does as well. Character encoding
|
|
|
+ can be set differently on the view object itself using the
|
|
|
+ <methodname>setEncoding()</methodname> method (or the the <varname>encoding</varname>
|
|
|
+ instantiation parameter). However, since <classname>Zend_View_Interface</classname> does
|
|
|
+ not define accessors for encoding, it's possible that if you are using a custom view
|
|
|
+ implementation with this view helper, you will not have a
|
|
|
+ <methodname>getEncoding()</methodname> method, which is what the view helper uses
|
|
|
+ internally for determining the character set in which to encode.
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ If you do not want to utilize <acronym>UTF-8</acronym> in such a situation, you will
|
|
|
+ need to implement a <methodname>getEncoding()</methodname> method in your custom view
|
|
|
+ implementation.
|
|
|
+ </para>
|
|
|
+ </note>
|
|
|
+
|
|
|
<example id="zend.view.helpers.initial.headstyle.basicusage">
|
|
|
<title>HeadStyle ヘルパーの基本的な使用法</title>
|
|
|
|
|
|
@@ -142,7 +177,7 @@ $this->headStyle()->prependStyle($firstStyles);
|
|
|
時には <acronym>CSS</acronym> のスタイル宣言をプログラムで生成しなければならないこともあるでしょう。
|
|
|
文字列の連結やヒアドキュメント等を使っても構いませんが、
|
|
|
ふつうにスタイルを作成してそれを <acronym>PHP</acronym> のタグに埋め込めればより簡単です。
|
|
|
- <code>HeadStyle</code> は、スタックにキャプチャすることでこれを実現します。
|
|
|
+ <classname>HeadStyle</classname> は、スタックにキャプチャすることでこれを実現します。
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -166,7 +201,7 @@ body {
|
|
|
</para></listitem>
|
|
|
|
|
|
<listitem><para>
|
|
|
- <code><style></code> タグに追加の属性を指定したい場合は、
|
|
|
+ <emphasis><style></emphasis> タグに追加の属性を指定したい場合は、
|
|
|
<methodname>captureStart()</methodname> の 2 番目の引数に配列形式で渡します。
|
|
|
</para></listitem>
|
|
|
</itemizedlist>
|