もじらで懺悔…#6…clear プロパティ編

 IEともじらで見た場合の違いの原因を探してみる #6
カテゴリ
Digital Shop めぐ味屋 WEB-LOG N
Digital Shop めぐ味屋 WEB-LOG N/一覧 (46)


デジタルお札
絵
めぐ味屋の看板息子


検索できます




2004年10月
         
13
           

新着エントリ
Movable Type 版 小説配信再開 (5/14)
LULU-LOG るるろぐ:サイト移転のお知らせ (4/17)
マカフィー製品、スクリプトエラーの謎… (10/26)
MT 3.1 へ移行完了 (10/26)
MT3.1 インストール #5…Movable Type3.1の起動 (10/24)
MT3.1 インストール #4…mt-check.cgiなどを実行する (10/24)
MT3.1 インストール #3…ファイルのアップロード/パーミッションの変更 (10/24)
MT3.1 インストール #2…perl のパスを変更する (10/24)
Movable Type 3.1 をisweb にインストールする (10/24)
のブログスタイルシート…コメントフォーム編 (10/21)
のブログスタイルシート…サイドバー編 #2 (10/20)
のブログスタイルシート…サイドバー編 (10/20)
のブログスタイルシート…タイトル部編 #2 (10/20)
のブログスタイルシート…エントリ部編 (10/19)
のブログスタイルシート…日付部編 (10/19)
のブログスタイルシート…ブログタイトル部編 (10/19)
のブログスタイルシート… body 編 (10/19)
のぶろぐスタイルシート…リンク編 (10/19)
ああ、そういうからくりかあ... (10/19)
もじらで懺悔…#7 background-attachment 編 (10/16)
DAZ でマイケルをゲット、支払いはペイパルで… (10/15)
DAZ でマイクェル買ってみました…(ビッキーもね) (10/14)
MIDI ファイルに著作権情報を埋め込む (10/14)
DNA塩基配列による音階とイメージ (10/13)
もじらで懺悔…#6…clear プロパティ編 (10/13)
DAZに問い合わせてみました… (10/9)
もじらで懺悔…#5…alt と title編 (10/8)
もじらで懺悔… #4…ソース丸出し編 (10/6)
もじらで懺悔… #3…text-align 編 (10/5)

新着トラックバック/コメント

めぐ味屋関連サイト
お仲間

アーカイブ
2004年 (44)
9月 (12)
10月 (32)
2005年 (2)
4月 (1)
5月 (1)


アクセスカウンタ
今日:26
昨日:49
累計:98,780


RSS/Powered by 「のブログ

2004年10月13日(Wed)
< もじらで懺悔… #4…ソース... < もじらで懺悔…#5…alt と... | ■HTML/スタイルシート/一覧 | もじらで懺悔…#7 backgro... > のぶろぐスタイルシート…...
もじらで懺悔…#6…clear プロパティ編

さて、ちょっと間が開いてしまいましたが、「もじらで懺悔」のコーナーです。決してあきらめたわけじゃありませんよ。あはははは…汗…。

今日の懺悔は、「ソースの丸出し」に匹敵するくらい大罪に値するのではないかとめぐ味屋自身思うのであります…。

 ●clear プロパティ抜けによるレイアウト崩れ

です。。。しかしこんな馬鹿者、私だけでしょうか…(ネタじゃないのよ〜涙笑〜)。
…では、以下に、簡単な例を書いてみます…。

 <div style="width:100%;">
  <img src="イメージのパス" alt="ねこアイコン"
    width="150" height="150" style="float:left;" >
    ここに文字を入れると文章が回り込むの。
    ちょっとうれしいわ…
    うふふ…
 </div>
 ここにも文字を書く。

これをIE5.5 ともじらで見てみます。

…うへぇ…。

作者(私 笑)は、IE5.5で見えてるようになるよう意図していたので、あ、ちゃんとできてる。るるるる〜と思い、そのままでありました…。でも、もじらで見ると</div>の後の「ここにも文字を書く」は、floatが生きている限り、どんどん(この場合絵の右に)回り込んでいくのです。画像の高さが終わるまで…。で、これは文字だけでなく、画像であろうが、どんどん回り込みます。。。

この場合、
「うふふ…」の後、</div>の前に<br style="clear:left;">を入れてやって、float で定義した回り込みを解除します。そうすることによって、ああ、ここで回り込み終わりなんだなってブラウザが理解してくれて、ちゃんと意図したとおりに表示できるようになります。


2004/10/13 19:44追記:
例によってWEB標準普及プロジェクトからですが
…略…CSS2仕様書でのHTML4.0の定義例でbr要素はインライン要素となっています。 clearプロパティ自体は本来、ブロックレベル要素にしか適用されません。…略
…とありました。しかし、また続きの下りに以下のようにもありましたので、
…略…今回は空のブロックレベル要素でclearに指定を行うのもあまり適当ではないと考え、…略
このページでも上記の例では、<br style="clear:left;">を使っておくことにします。後述にブロックレベル要素で clear プロパティを使った例が出てきます。
引用参考記事:heightプロパティの注意点〜内容がfloat要素の場合

んでは、もっと実際問題としての、悲惨な状態を簡単に書いてみます。

これは、まったく同じHTMLソース、そしてスタイルシートの定義なのですね。。。

 :HTML ソース:
  <div id="bodylay">
   <div id="lay01">
    ■<br>
    ここはfloat:left<br>
    文字を入れてみます。ちゃんと出来てる?
   </div>
   <div id="lay02">
   ▼これは悲惨なんてモンじゃないです。
   </div>
  ●
  </div>

 :スタイルシート:
 .bodylay {
   width: 20%;
   padding: 0px;
   margin: 0px;
   …省略
 }

 .lay01 {
   float:left;
   padding: 5px;
   margin:6px;
   …省略


 .lay02 {
  width:98%;
  padding: 5px;
  margin: 6px;
  …省略
 }

です。で…。

もう、おわかりかと思いますが、これは、「lay02」に「clear:left;」を追加すればちゃんと表示されます。例によって、「padding」「margin」を定義する場合は、「width」は取ります。。。るるる。。。

めぐ味屋ブログ内参考記事:
もじらで見る! #2 width, padding 編
もじらで懺悔…width, padding, margin 編
もじらで懺悔…#2…width, padding, margin 編#2

…さて、いよいよ、懺悔に一区切りついたでしょうか?(本当?汗…)。今後は、自分のサイトを実際に直しながら、「うへぇ〜」と気がついたことがあれば、記事にしてみたいと思います。

 # まず手始めは、「るるろぐ」だ〜 #


writebacks(0)
トラックバック(trackback)
TrackBack ping me at:

コメント(comment)
名前(*):
URL/Email: (optional)
タイトル(*):
コメント内容(*):
画像認証(*): 表示された画像の文字を入力してください:

名前と URL/Email をcookieで保存