メモ

Webデザイン 知らないと困る 現場の新常識100より引用させていただきました。

◆IE6でのXML宣言
 「後方互換(Quirk)モード」で表示する仕組みになっている。
 ※後方互換(Quirk)モード
  Web標準に則してつくられていないページを表示するための機能。
  IE,Opera,Firefoxなどのブラウザは、「後方互換モード」と
  「標準準拠モード」の2つレンダリングモードを備えている。


Ajax
 Asynchronous JavaScript + XML の略。
 JavaScriptXMLHttpRequestを使って非同期にサーバーとの
 通信を行い、データを取得しWebページ内のコンテンツを
 動的に書き換えるといったことを指す。


検索エンジンクローラー制御(robots)
・このページを検索対象にせず、かつここからのリンクをたどらない。
 <meta name="robots" content="NOINDEX,NOFOLLOW">
 ・このページは検索対象とするが、ここからのリンクをたどらない。
 <meta name="robots" content="INDEX,NOFOLLOW">
 ・このページは検索対象としないが、ここからのリンクをたどる。
 <meta name="robots" content="NOINDEX,FOLLOW">
 ・このページを検索対象とし、ここからのリンクをたどる。
 <meta name="robots" content="INDEX,NOFOLLOW">


◆サイトID
 企業やブランドのロゴマークなど。
 サイト全体を通して表示される。デザイン上、
 最左上部に設けられているのが一般的である。(h1)


◆em要素とstrong要素
 em = emphasis(強調)
strong = strong emphasis(より強い強調)
 emは、Webブラウザの初期スタイルで斜体で表示される。
 emを飛び越えてstrongを使用するのは×。
 CSSで font-style: normal; に設定して使用する。
 また、bは「視覚ブラウザ上で太字で表示する」の意を持ち、
 emは「制作者にとって強調したい大事な箇所」の意を持つ。
 結果として検索エンジンクローラーや音声ブラウザのユーザーなど、
 視覚から離された閲覧者(ソフト)にも制作者の意図を理解してもらえる
 ので、emを使用するようにする。


jquery.biggerlink.jsでリンクボタンに見せる
 dlでマークアップした画像と説明文にマウスオーバーした際、
 ブロックレベル要素があたかも1つのリンクボタンであるかのような、
 挙動を見せる、任意の範囲まで広げる為のライブラリ。
 デモ(IE6は微妙)

セマンティック・ウェブ
Webページの内容に意味を表すメタデータを付与することにより、コンピューターが効率よく情報を収集・解析できるようにするという構想、概念のこと。
W3Cティム・バーナーズ=リーによって提唱された。

◆clearfix
フロートを指定された要素も親要素の高さに含めて欲しい、という場合に利用。
div#containar:after {
display: block;
clear: both;
height: 0;
visiblity: hidden;
content: ".";
}

また、この記述をせず「overflow: hidden;」を指定するだけでも解決できることもある。

◆IE6で定義型リストの1行目が揃わない
●zoomで解決する
 *html dd {
zoom: 1; /* IE6用の指定 */
}

◆インラインフレームの見た目をCSSで実現
 overfloatプロパティを設定
dl {
overflow: auto;
}

もしくは

dl {
overflow: scroll;
}

★autoとscrollの違い
●autoは、ボックスから内容がはみ出されていないときはスクロールバーは表示されない。
●scrollは、ボックスから内容がはみ出されないときでも、縦横のスクロールバーが表示される。


◆IE6でのmax-width(最大値)を指定するには
リキッドレイアウトの場合、横幅などを%で指定するが、
同時にmax-widthを指定しておくが、IE6ではサポートしていないため、
CSS minimim and maximum sizesで公開されているminmax.jsをhead要素内で
読み込むことでmax-widthプロパティを利用できるようになる。
さらに「min-width」「min-height」「max-width」の3つのプロパティも
利用できるようになる。


◆IE6では、body要素へ指定したfont-sizeがtable要素には引き継がれないというバグがある。
body要素に12px指定してもtable要素はデフォルトの16pxのままになってしまう。
そのバグを回避するには「Yahoo! UI Library:Fonts CSS」で対応。

◆マージンの相殺
要素間のマージンが隣り合っているとき、お互いのマージンが相殺されてしまう。ただし、上下のマージンの時のみ。

★p要素が連続する場合での例
 1つ目のp要素の下マージンが「20px」
 2つ目のp要素の上マージンが「40px」
 ⇒大きい方のマージン「40px」が採用される。
 ○正の値同士だと「大きい方」、負の値同士だと「小さい方」、正と負だと足し引  きした値が採用される。

★マージンの相殺が発生しない条件
 ・floatプロパティを指定された要素と他の要素間では発生しない
 ・positionプロパティで「absoluteもしくはfixed」の指定をされた要素は発生  しない。


◆tableのセル内で改行させないCSS
会社概要などの左側の見出し(住所や電話番号など)の文字を改行させないためには以下のCSSを適用する。
 table#company th.midashi {
white-space: nowrap;
}

◆IE6で起きる縦型ナビゲーション画像間の隙間解消
 ・フォントサイズを極端に小さな絶対値(1px)で指定する方法
  ul li {
 font-size: 1px;
 line-height: 1px;
 }


 ・overflow:hiddenで解決する方法
  ul li {
height: 35px;
overflow: hidden;
}
※overflowプロパティを記述する際はheightプロパティもあわせて記述する。


IEでz-indexが指定通りに効かないときは?
 IE以外のブラウザはz-indexで指定した通りの順に重なって表示される。
 しかし、IEだとXHTMLの記述順の方が優先されてしまう。
 それを解消するには「親」ボックスにもz-indexを指定する。

◆ストレージサービスやプロジェクト管理サービスを利用する
複数の人と作業を同時に進めている場合のデータのやり取りなどは、
以下のようなオンラインサービスを活用すると便利。

Basecamp
fluxion
Backlog