むかしむかしあるところに `<center>`という黒魔法が存在したお話

その昔、<center>タグっていう便利なものがあったのだよ。

HTML4.01で非推奨タグとなり、最新のHTML5では廃止となりました。

黒魔法がなくなった現代のセンタリング方法

文字のセンタリングについては、cssのtext-alignを使うようになりました。

text-align: center

コンテンツブロックをセンタリングしたい場合は、cssのmarginを使うようになりました。

margin: 0 auto; width: 300px;

widthも同時に指定するようにしないとうまくセンタリングされませんので注意。

cssのセレクタパターンについて調べたメモ

セレクタって何かね?


(c) .foto project

CSSの書式は次のようになっています。

セレクタ { プロパティ:値; プロパティ:値; }

セレクタとは、スタイルを適用する対象のことです。

p { color: white; }

この例では、pがセレクタ、colorがプロパティ、whiteが値です。

複数のセレクタに対して、共通のスタイルを宣言する場合は、複数のセレクタをカンマ(,)で並べます。

body,h1,h2 { font-family: sans-serif; }

これは次のように書いたのと同じ事です。

body { font-family: sans-serif }

h1 { font-family: sans-serif }

h2 { font-family: sans-serif }

全称セレクタ

セレクタワイルドカードを指定出来ます。

  • { margin: 0;

padding: 0; }

ブラウザごとに初期設定のスタイルが決まっていますが、

それをリセットさせるために使えます。

が、別の手段を使ったほうがよさそうです。

ブラウザリセットするときに全称セレクタを使わない方がいい理由

各タグごとに初期値を設定すべきとあります。

タイプ・セレクタ

HTMLのタグ要素を指定できます。

h1 { font-size: 10px; }

文脈セレクタ

HTMLのツリー構造に固定した要素をセレクタで指定できます。

ここはp要素の中これはpの中のem要素です。です。

上記emタグのみスタイルを指定する場合

p em { color: red }

クラス・セレクタ

クラスに付けるスタイルです。

<p class="note">ノート</p>に対応する例

p.note [ font-style: italic }

class="note"を持つすべての要素に対応する例

.note { font-size: 10px }

class属性の属性値は複数指定できますが、それら複数のclass属性に対応できます。

class属性値がnoteとaccessである場合

この要素に対応する例

p.note.access { font-weight: bold }

一意セレクタ

クラスセレクタはclassに対するセレクタでしたが、一意セレクタはidに対するセレクタです。

<h1 id="title">Good evening</h1>

対応するセレクタ

h1#title { color: #eeddff }

実は他にもこんなセレクタ

属性セレクタ

属性値にかかわらず、href属性を持つ a 要素

a[href] { text-decoration: underline }

target=_blankである全ての a 要素

a[target="_blank"] { font-weight: bold }

"|="で、属性値がハイフンで区切られているものの先頭単語を指定します。

次の例は「en」「en-US」「en-cockney」などにマッチします。

*[lang|="en"] { color: red }

他にも、"*="や"^=", "$="などいろいろな指定方法があります。

参考:CSSセレクタについてのおさらい

 <ul>
     <li>長男
     <ol>
         <li>長女</li>
         <li>次女</li>
         </ol>
     </li>
     <li>次男
         <ol>
             <li>長男</li>
             <li>長女</li>
         </ol>
     </li>
 </ul>
     ul * li {
      background-color: yellow;
     }

実行結果

f:id:jiey:20130221140750j:plain

子供セレクタ

孫要素以降を指定するには、ワイルドカード * を使いました。

子要素だけを指定したい場合「大なり」不等号記号を使います。

body > p { line-height: 1.2 }

body要素の直接の子要素であるp要素に対してのみ、スタイルを設定します。

孫要素にはマッチしません。

このあたり、もう少し実際に触れて覚えて行きたいところです。

隣接セレクタ(兄弟セレクタ)

ある要素の共通の子要素であり、かつ前後に隣接する要素に対してスタイルを設定します。

h1要素の直後に現れるh2要素にだけマッチする場合

h1 + h2 { margin-top: -5mm }

まだまだ先は長いぞー。

参考: CSSセレクタについてのおさらい

2日目〜次の仕事を始める前にデザインの勉強


(c) .foto project

1日目のふりかえり

1日目はfloatを使ったレイアウトの勉強をしました。 慣れると意外に簡単〜♪

ここのページにわかりやすく書かれていた。

初心者がよくハマる、CSSのfloatプロパティ徹底攻略 | WeeeeB

本日やりたいこと

2日目はpositionを使ったレイアウトについて。 CSSの基本的なセレクタについても勉強するよ。

1日目〜次の仕事を始める前にデザインの勉強

現在組み込み系SEで、大阪の独立系SI会社に務めているjieyです。

ワークスタイルを変えたくて、今の会社をやめ転職することにしました。2月14日でプロジェクト終了で、3月1日から次の仕事が始まります。

次の仕事はWebデザイナー。できるかな。。

 

とはいえ、始まるまでに万全の状態にしておきたいので、仕事が始まるまでの間毎日、時間の限りWebデザインの勉強をしたいと考えています。

 

今日は、CSSのfloatやclearfixについておさらい。

 

いつも何気なく使ってたから、これを機にちゃんと理解しておこーっと。