新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

最もシンプルなオリジナルのリセットCSSを考えてみた【Webデザイン】

   

  • このエントリーをはてなブックマークに追加

1年以上前の記事です。内容が古い可能性があります。

そろそろHTML5が正式に勧告される昨今に今更感漂いますが、個人的にそろそろ積み重ねをかたちにしてやる頃だなぁというのもあって、オリジナルのリセットCSSを考えてみました。
考えるにあたり、とにかくシンプルに最低限のところのみ記述することを心がけました。
結果として非常に短いCSSになってしまいましたが、そのあたりはご了承下さい。

WEB

スポンサーリンク
 

まずはソースをお見せしてから解説していこうと思います。

@charset “utf-8”;   
*{
margin:0;
padding:0;
}
body {
font:14px/1.5 Osaka,”MS Pゴシック”,sans-serif;
}
li,dd{
margin-left:1em;
}
table{
border-collapse:collapse;
border-style:solid;
}
/*
h1,h2,h3,h4,h5,h6,p,table,ul,ol,dl{
margin-bottom:1.5em;
}
*/
img{
border:none;
vertical-align:bottom;
}

もうね。ぶっちゃけると「*」のところだけでもいいんじゃないかと考えていたのですがさすがにそれだとちょっとというのもあってちょこちょこ書き加えています。

といったところで解説したいと思います。

まず、「*」に対してマージン(外マージン)、パディング(内マージン)を0にしています。
「*(アスタリスク)」は全てのタグが対象になるという意味です。
これは、下記の状況に対する対策というのが一つ。
□ 内包されたDIVにmarginを設定すると親要素にも同じマージンが設定されることがある
つまり、<div>のマージンを0にしていても、内包されている<h1>や<p>等のマージンの影響で<div>にマージンが設定されてしまうことがあってそれを回避するため。
それと、単純にレイアウトしやすいようにブロックレベル要素のマージン、パディングを全て0に統一してしまっているというのもあります。

次に「body」に対してフォントの指定や行送りの指定、フォントサイズの指定をしている部分。
ここは特に<p>や<div>で囲まれている一般的な文章の部分の可読性を、フォントや行送りを統一することで上げるという意味が大きいです。
だったら<*>にフォントの指定も書いちゃえばいいのにと思うかもしれませんが、そうすると<h1>等、見出しのフォントサイズも<p>等と同じサイズに統一されてしまうのでダメです。
ちなみに、fontプロパティを使ったまとめ書きを使っています。
□ CSS2.1まとめ書き-font編(HTML・CSSリファレンス) – ちほちゅう

次の「li,dd」の部分はリストタグに対するフォローです。
「*」でマージン、パディングを全て0にしてしまうとリストの表記がちょっとおかしくなってしまいます。
そこで、 <li>、<dd>の時だけ左マージンを設定しています。
なお、単位は1文字分の長さの「em(エム)」を使用しています。

次の「table」は表組の罫線がディフォルトのままではカッコ悪いので設定しています。
つまり、表組罫線を1pxの一本線に設定しているわけです。 

で、最後コメントアウトしている部分は一応書いたものの、実際は使わない部分。
つまり、<p>や<h1>、<ul>等の下の部分にマージンを設けて、ディフォルトの状態に近づけています。
ただ、それが嫌で最初の「*」の設定をしているわけなのでここはコメントアウトしておきました。

※ IE対策でimgタグにboader:noneを、imgタグの下の隙間対策でvertical-align:bottomを追記しました。(2014/6/30)

といったところ。

本来はここにclearfix等も書いてあげたほうがいいのかもしれませんが、わかりにくいので排除です。
ちなみに、clearfixに変わる対策としては以下の記事を参考にして下さい。
□ 「float」で親要素の高さがなくなってしまったときは親要素に「float」

また、フォームに関しては今回は一切無視してます。
そもそも、フォームを使うページって限定されるので全てのページに使われることを前提にしたリセットCSSに記述する必要あるのかなぁとも思っていますし。。

「こんな簡単なリセットCSSだったら紹介しなくてもいいじゃん。」とお思いの方もいるかもしれません。
そういった方には逆に、「そんなに難しく考えなくていいじゃん。 」と返しておきます。
CSSなんてシンプルに考えればホント、そんなに難しいもんじゃないはず。
なんか、難しく考えて複雑に複雑にしちゃう人いますが、そういうときは思い切ってリセットしちゃったらどうでしょう。
意外と簡単に問題が解決してしまうかもしれませんよ。 

 - Webデザイン, デザイン

アドセンス広告メイン

Message

メールアドレスが公開されることはありません。

  関連記事

Googleマップストリートビュー。次はどこ?

1年以上前の記事です。内容が古い可能性があります。Google Maniaさんで …

no image
検索ワード順位アゲアゲ大作戦 #4 リンクファーム登録しまくり大作戦

1年以上前の記事です。内容が古い可能性があります。リンクファームの使っているリン …

携帯サイト(モバイルサイト)でCSS

1年以上前の記事です。内容が古い可能性があります。携帯サイト(モバイルサイト)で …

no image
携帯サイトの3キャリア対応アイコンの作り方

1年以上前の記事です。内容が古い可能性があります。携帯サイトの作り方については以 …

no image
サイト利用状況のアンケート

1年以上前の記事です。内容が古い可能性があります。社内でサイト利用状況のアンケー …

Illustrator(イラストレーター)を使ってWebサイトのデザインをする際の注意点

1年以上前の記事です。内容が古い可能性があります。自分、基本的にIllustra …

ワードプレス(WordPress)で新しいテーマをつくる方法 #wp

1年以上前の記事です。内容が古い可能性があります。「WordPress(ワードプ …

HTML5対応HTML構文チェック(バリデート)サイト「Another HTML Lint5」

1年以上前の記事です。内容が古い可能性があります。Dreamweaverなど、H …

no image
携帯SEO

1年以上前の記事です。内容が古い可能性があります。携帯サイトの依頼が来た。 しか …

Tumblr(タンブラー)を勉強してみた (11/11追記)

1年以上前の記事です。内容が古い可能性があります。謎多きTumblr(タンブラー …

血液型オヤジ