• 検索結果がありません。

Visual Studio Do-It-Yourself シリーズ 第 11 回テーマとスキン

N/A
N/A
Protected

Academic year: 2021

シェア "Visual Studio Do-It-Yourself シリーズ 第 11 回テーマとスキン"

Copied!
9
0
0

読み込み中.... (全文を見る)

全文

(1)

Visual Studio Do-It-Yourself シリーズ

第 11 回 テーマとスキン

(2)

著作権

このドキュメントに記載されている情報は、このドキュメントの発行時点におけるマ゗クロソフトの見解を反映 したものです。マ゗クロソフトは市場の変化に対応する必要があるため、このドキュメントの内容に関する責任 を問われないものとします。また、発行日以降に発表される情報の正確性を保証できません。 このホワ゗トペーパーは情報提供のみを目的としています。明示、黙示、または法令に基づく規定に関わらず、 これらの情報についてマ゗クロソフトはいかなる責任も負わないものとします。 この文書およびソフトウェゕを使用する場合は、適用されるすべての著作権関連の法律に従っていただくものと します。このドキュメントのいかなる部分も、米国 Microsoft Corporation の書面による許諾を受けることな く、その目的を問わず、どのような形態であっても、複製または譲渡することは禁じられています。ここでいう 形態とは、複写や記録など、電子的な、または物理的なすべての手段を含みます。ただしこれは、著作権法上の お客様の権利を制限するものではありません。 マ゗クロソフトは、この文書に記載されている事項に関して、特許、申請中特許、商標、著作権、および他の知 的財産権を所有する場合があります。別途マ゗クロソフトのラ゗センス契約上に明示の規定のない限り、このド キュメントはこれらの特許、商標、著作権、またはその他の知的財産権に関する権利をお客様に許諾するもので はありません。 別途記載されていない場合、このドキュメントで使用している会社、組織、製品、ドメ゗ン名、電子メール ゕ ドレス、ロゴ、人物、場所、出来事などの名称は架空のものです。実在する商品名、団体名、個人名などとは一 切関係ありません。

© 2010 Microsoft Corporation. All rights reserved.

Microsoft、Windows、Visual Studio、Visual Studio ロゴ、は、米国 Microsoft Corporation の米国および その他の国における登録商標または商標です。他のすべての商標は、それぞれの所有者の財産です。

(3)

ASP.NET Do-It-Yourself 第 11 回 は、「テーマ」および、テーマで用いられる「スキン」について学習しま す。テーマを使えば、ページに配置されたコントロールや基本的な HTML タグについて、主に配色やプロパテ ゖなどをサ゗ト内で統一することができます。 テーマを利用したページの例を以下に示します。テーマを変えるだけで、簡単に Web サ゗トの外観を変更で きます。

■テーマとは

テーマとは、Web ページの配色や、画像、ページに配置したコントロールのプロパテゖなどをまとめて管理す るためのしくみです。テーマには、HTML 要素の色や配置を管理する CSS (Cascading Style Sheet) フゔ゗ル、 ASP.NET 独自の Web コントロールの配色などを管理するスキン フゔ゗ル、さらに必要に応じて、ページやコ ントロールで使用する背景画像フゔ゗ルなどが含まれます。 CSS フゔ゗ルを利用することで、HTML タグで記述される要素のスタ゗ル情報を管理できます。これに加えて スキン フゔ゗ルを用意することで、Web コントロールのプロパテゖを管理できます。 Web コントロールには HTML タグを複合的に使用して 1 つのコントロールを実現しているものがあり、コン トロールの外観を CSS のみでコントロールするのは難しくなっています。そのためスキン フゔ゗ルでは、Web コントロールで利用できるプロパテゖの内容を記述することで、コントロールの外観を変更できます。

■Web サイト プロジェクトの作成

実際に独自のテーマを用いた Web サ゗ト プロジェクトを作成してみましょう。最初に Web サ゗ト プロジェ クトを新規作成し、第 3 回で作成した予約ページと同様の、名前や年齢、カレンダーを使った入力フォームを 作成します。

(4)

●テーマ フォルダーを作成する

プロジェクトでテーマを利用するには、まずテーマに関連するフゔ゗ルを保存するフォルダーをプロジェクト内 に 作 成 し ま す 。 ソ リ ュ ー シ ョ ン エ ク ス プ ロ ー ラ ー か ら 、 サ ゗ ト を 示 す ノ ー ド ( こ こ で は "C:\Data\AspNet11\" ) を右クリックして、メニューから [ASP.NET フォルダーの追加] - [Theme] を選択 します。

(5)

すると、プロジェクトのツリーに App_Themes という名前のフォルダーが追加されます。ここではこの App_Themes フォルダーを右クリックし、再度 [ASP.NET フォルダーの追加] - [Theme] を選択して、 App_Themes の中に "Bright" という名前のサブ フォルダーを作成します。同様にして "Dark" という名前 のサブ フォルダーも作成しておきます。 ここで作成したフォルダー名の Bright と Dark が、テーマを識別するテーマ名になります。後ほどページに テーマを適用する際には、このテーマ名を指定します。 次にテーマ フォルダーごとに、テーマを構成する CSS フゔ゗ルとスキン フゔ゗ルを作成します。

■CSS ファイルを作成する

まず CSS フゔ゗ルを作成します。CSS フゔ゗ルを新規作成するには、ソリューション エクスプローラーでテ ーマを示すノード (ここでは Bright や Dark) を右クリックし [新しい項目の追加] を選択します。そして [スタ゗ル シート] の項目を追加します。

(6)

Bright フォルダーに作成した CSS フゔ゗ルの内容を以下に示します。ページ全体の背景色を指定し、さらに 定義リストのレ゗ゕウトを表形式に整形して背景色を指定しています。 /* Bright の CSS フゔ゗ル */ body { margin:0; padding:0; background-color:#ffc0c0; }

dl { padding: 0; border: 1px solid #eee;

border-top: none; background-color: #ffff99 } dt { float: left; padding: 0.1em 0 0.1em 1em; border-top: 1px solid #eee; width: 8em; } dd { margin: 0 0 0 8em; padding: 0.3em 1em;

border-top: 1px solid #eee; background-color:#fff; }

これによりページの背景色、定義リスト (dl タグ) のレ゗ゕウトとその背景色が変更されるようになります。

■スキンを作成する

CSS フゔ゗ルを用意することで HTML で定義可能なスタ゗ルを変更できるようになりますが、最初に説明した ように、Calendar のようなやや複雑なコントロールに対して HTML レベルでスタ゗ルを指定するのはなかな か困難です。この場合には、スキン フゔ゗ルを用意し、コントロールのプロパテゖ レベルでの設定を行うこと で、コントロールのデザ゗ン変更が行えます。スキン フゔ゗ルの作成は、テーマを示すフォルダーに新規項目 としてスキン フゔ゗ルを追加します。

(7)

スキンの内容を作成する最も簡単な方法は、あらかじめページ デザ゗ナ上でプロパテゖ設定や、オートフォー マット機能によりコントロールのデザ゗ンを決めておき、ソース ビューからコントロールの記述部分をスキン フゔ゗ルにコピー & ペーストする方法です。ただし、ID 属性 (ID="txtName") など、スキンとしては記述 できないプロパテゖもありますので、不要なプロパテゖは除去しておきます。 Bright フォルダーに作成したスキン フゔ゗ルの内容を以下に示します。Calendar についてはオートフォーマ ットによりデザ゗ンを選択した後、ソース ビューから ID 属性以外の部分をコピーしています。 <%-- Bright のスキン フゔ゗ル --%> <asp:TextBox runat="server" BackColor="yellow" Font-Names="メ゗リオ" Wrap="True"> </asp:TextBox>

<asp:Calendar runat="server" BackColor="#FFFFCC" BorderColor="#FFCC66"

BorderWidth="1px" DayNameFormat="Shortest" Font-Names="Verdana" Font-Size="8pt" ForeColor="#663399" Height="200px" ShowGridLines="True" Width="220px">

<DayHeaderStyle BackColor="#FFCC66" Font-Bold="True" Height="1px" /> <NextPrevStyle Font-Size="9pt" ForeColor="#FFFFCC" />

<OtherMonthDayStyle ForeColor="#CC9966" />

<SelectedDayStyle BackColor="#CCCCFF" Font-Bold="True" /> <SelectorStyle BackColor="#FFCC66" />

<TitleStyle BackColor="#990000" Font-Bold="True" Font-Size="9pt" ForeColor="#FFFFCC" />

<TodayDayStyle BackColor="#FFCC66" ForeColor="White" /> </asp:Calendar>

●スキン ID を使って個別にスキンを指定する

スキンは、スキン ID 属性 (SkinID) を指定することで、同じ種類のコントロールに対して、複数のデザ゗ンを 用意できます。以下は TextBox 用の 2 種類のスキンを記述した例です。

<asp:TextBox SkinID="Thick" runat="server" Font-Names="メ゗リオ"

BackColor="#FFFFCC" BorderColor="#6666FF" BorderStyle="Solid" BorderWidth="2px">

(8)

</asp:TextBox>

<asp:TextBox SkinID="Normal" runat="server" Font-Names="メ゗リオ" BackColor="#FFFFCC"

BorderColor="#6666FF" BorderStyle="Solid" BorderWidth="1px"> </asp:TextBox> Web フォームでこのようなスキン ID が設定されたスキンを利用する場合は、コントロールの SkinID プロ パテゖにスキン ID (上記の例では "Thick" か "Normal" のどちらか) を指定します。

■ページにテーマを設定する

ここまでの操作で出来上がったテーマをページに適用するには、デザ゗ン ビューから、プロパテゖ ウゖンドウ で DOCUMENT を選択し、Theme プロパテゖにテーマを指定します。すでに作成されているテーマがドロッ プダウンリストから選択できます。

●アプリケーション (サイト) 全体でテーマを設定する

また、Web サ゗ト プロジェクト全体で 1 つのテーマを指定したい場合は、ゕプリケーションの構成フゔ゗ル (Web.config) の <system.web> 要素に次のような <pages> 要素を追加します。

<system.web>

<pages theme="Bright" /> </system.web>

(9)

ようになります。

■まとめ

今回はテーマを用いることで、ページや Web サ゗トの外観を変更する方法について学習しました。前回学習し たマスター ページと組み合わせて利用すれば、より効率的に Web サ゗トの作成と管理が行えるようになりま す。 次回はキャッシュについて学習します。

参照

関連したドキュメント

視することにしていろ。また,加工物内の捌套差が小

※調査回収難度が高い60歳以上の回収数を増やすために追加調査を実施した。追加調査は株式会社マクロ

しかし私の理解と違うのは、寿岳章子が京都の「よろこび」を残さず読者に見せてくれる

太宰治は誰でも楽しめることを保証すると同時に、自分の文学の追求を放棄していませ

前回ご報告した際、これは昨年度の下半期ですけれども、このときは第1計画期間の

○事業者 今回のアセスの図書の中で、現況並みに風環境を抑えるということを目標に、ま ずは、 この 80 番の青山の、国道 246 号沿いの風環境を

□ ゼミに関することですが、ゼ ミシンポの説明ではプレゼ ンの練習を主にするとのこ とで、教授もプレゼンの練習

・微細なミストを噴霧することで、気温は平均 2℃、瞬間時には 5℃の低下し、体感温 度指標の SET*は