人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

CSSの * について質問です。

今日、Web製作を生業としている方とお話したときに

* {
margin:0;
padding:0;
}

は、「ハック」だよ。と指摘されました。

私としてはハックとは、ブラウザ毎の表示の違いを逆手にとってレイアウトすることと思ってましたが、*htmlならともかく、* {}はハックでは無いと思ってましたが実際どうなんでしょうか?

私は上記の通り、意見を伝えては見たものの、自信を持って * { }はハックと改めて言われたので、混乱してます。

ハックということは* { } の仕様はCSS2の仕様書でも推奨されて無いのでしょうか?

どなたか教えてください。宜しくお願い致します。



●質問者: ruijio
●カテゴリ:インターネット ウェブ制作
✍キーワード:HTML margin padding お話 ブラウザ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● y-kawaz
●27ポイント

ハックは特別なことである必要はなく、上手くやるとか、解決するとか、そういう意味が込められた言葉です。

なので * {margin:0;padding:*;} はある目的をシンプルに解決する方法のひとつなので立派にハックと言えると思います。


言葉の応用?としてライフハックという言葉もあり、これは生活を向上する為の知恵などを指します。

http://b.hatena.ne.jp/t/lifehack?sort=hot

http://d.hatena.ne.jp/keyword/%A5%E9%A5%A4%A5%D5%A5%CF%A5%C3%A5%...


2 ● wizemperor
●27ポイント

* {} はハックでもなんでもありませんよ。


ブラウザの違いを逆手にとるかどうかは、使用者の使い方というだけであって、

*は正式なCSS2のセレクタの仕様です。


仕様書で言うと、


日本語訳

http://www.y-adagio.com/public/standards/tr_css2/selector.html


のあたりになりますね。

最近は全称セレクタやユニバーサルセレクタと呼ばれることが多いと思います。


3 ● antivivi
●26ポイント ベストアンサー

個人的な感覚に過ぎないのですが、


CSSハックは仰ります通り、各ブラウザの表示のズレを補正するためのコードのこと。

ハックは、あるゴールに対して独創的な解決方法をもって完結すること。


と考えた上で、今回の場合はCSSハックを指すのだと思います。

そしてユニバーサルセレクタ(*)は仕様書に通り

http://www.y-adagio.com/public/standards/tr_css2/selector.html#u...

はん(汎)用選択子というちゃんとしたセレクタです。


今回のブロック( margin:0; padding:0;)では公式文書で推奨も非推奨されていませんし、良し悪しを判断できません。

ただ、レンダリング速度の問題で嫌煙されている一面はあるのだと思います。

◎質問者からの返答

ありがとうございます。

なるほど、ハックという言葉に色々意味があるって考えれば「解釈の違い」ということで片付けられそうですかね。

なんか頭がすっきりししました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ