CSS Selector Generator | CSS のセレクタ一覧を一発で自動生成!

25

03月2008年

【CSS】clearfixを使わずにfloatを解除する

ishida 21:00 PM

  • はてなブックマークに登録
  • livedoorクリップに登録
  • Yahoo!ブックマークに登録
  • deliciousに追加

以前、floatを解除する clearfixハックという記事を書きましたが、できることならハックは使いたくないと最近思うようになってきました。

いろいろと検証した結果、今回ご紹介するのはハックを使用せずにfloatを解除するための方法です。

divの構成はこちら。

boxというクラス名の div (floatを解除するための div )は必要です。

cssのソース

div.box {
  overflow: hidden; /* これがポイント */
  position: relative;
/* IE6でエリアを選択できるようにする  */
/* DreamWeaverのデザインビューで正しく表示させる */ 
}
div.left {
  float: left; /* 左に寄せて配置 */
  width: 200px;
}
div.right {
  float: right; /* 右に寄せて配置 */
  width: 200px;
}

overflowプロパティにhiddenの値を設定するだけで、解除できます。
またDreamWeaverのデザインビューが崩れたままの状態をpositionプロパティにrelativeの値を設定すれば、こちらも正しく表示させることができます。

対象ブラウザ

以下のブラウザでは確認済みです。

  • Windows:IE5.5 ~
  • Windows&Mac:FireFox1.5 ~
  • Windows&Mac:Opera9.1~
  • Windows&Mac:Safari3.0
  • MAC IE5.2

なおWindowのNetspace7.1で見ると、boxのdivごと消えてしまいます。
ですが、Netscapeは2008年3月1日をもってNetscapeブランドの全ブラウザ製品のサポートを終了しているので、対象外にしても問題はないと思います。

追記 08.03.28

positionプロパティは DreamWeaverのデザインビュー用と書きましたが、修正。

IE6の場合、HasLayoutプロパティを true に設定しないと、box内に含まれる要素(left と right の div )が表示はされますが、選択できない状態になります。

HasLayoutプロパティを true にするには、width や height を設定すればよいですが、今回は positionプロパティを使用しているので、そのまま使用します。つまり必須ということで。

バシャログスタッフによるWebサイト制作サービス

トラックバック

このエントリーのトラックバックURL
http://c-brains.jp/cgi-bin/mt/###/1491
###はmt-tb.cgiに変更してください。

コメントを投稿

ページの先頭へ

POPULAR TAGS
  • バシャログスタッフによるWebサイト制作サービス

ARCHIVE

特集

  • ステップアップ!CakePHP
  • 作って学ぶjQuery

RECENT COMMENTS

ty on Flashで動画を再生しよう!第 3 回 FLVプレーヤーをつくろう1/2。
お返事ありがとうございます。説明が足りなかったようで、もう少
minami on 【Fireworks】Fireworks の振る舞い 基本的なとこ
> nishiuraさん コメントありがとうございます。
minami on Flashで動画を再生しよう!第 3 回 FLVプレーヤーをつくろう1/2。
> tyさん コメントありがとうございます。 コンポーネント
ty on Flashで動画を再生しよう!第 3 回 FLVプレーヤーをつくろう1/2。
参考にさせていただきました。ありがとうございました。 とこ
Chakotay on 【Fireworks】Fireworks の振る舞い 基本的なとこ
現場では上級のデザイナーの人、レベルの高いセンスのあるデザイ