• ベストアンサー

スタイルシートのバグです(2)

下記アドレスが現在テスト中のサイトのアドレスです。 バグの内容は添付画像の赤枠の部分なんですが CSSの指定は見出しタグh3の下部にボーダーを設定してその中にテキスト要素を入れてフロートさせて右へ左へ配置しているのですが なぜか見出しタグh3で設定したボーダーの部分にテキストが乗ってきてしまって打ち消し線みたいになってしまうのです。 ソースも無駄な部分は消して今の状態までスマートにして色々試行錯誤してみたのですがどうにも解決できません。 ちなみに一般的なブラウザー全てで同じ現象になるのでそもそも文法が間違っているのですかね?? どなたかご教授いただけると助かります。 宜しくお願いします。 ■HTML http://sangoclip.web.fc2.com/lesson03/jyuken/ ■デフォルトCSS http://sangoclip.web.fc2.com/lesson03/shared/css/default.css ■リセットCSS http://sangoclip.web.fc2.com/lesson03/shared/css/reset.css

  • CSS
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • salonpath
  • ベストアンサー率48% (194/399)
回答No.1

バグではなくcssの正しい挙動だと思います。 F-LeftとF-Rightがfloatしてるので、p-title03の高さがなくなってるだけです。 clearfixで検索するか以下を参考にcssを追加してみると期待した表示になると思います。 http://blog.d-spica.com/entry/070307clearfix.html

champl
質問者

お礼

早々のご回答ありがとうございます。 どうやら私の記述ミスだったようです。 自分で「clearfix」を設定した時はダメだったんですが 今回再度設定してみましたら回避できました。 すいませんでしたこんな事でお手間取らせてしまって>< ありがとうございました。

その他の回答 (1)

  • abril
  • ベストアンサー率69% (388/560)
回答No.2

> 一般的なブラウザー全てで同じ現象になるのでそもそも文法が間違っているのですかね?? 文法が間違っているわけではなく、floatプロパティの仕様を正しく理解していない為ですね。 親要素はfloatしている子要素の高さを認識しません(例によってIE6は間違った解釈の為、違う挙動を示すのですが)。 なので、この場合は<h3 class="p-title03">~</h3>は全ての子要素(<span class="F-Left">サブタイトル</span>と<span class="F-Right">一覧</span>)がfloatしている為、高さを0と解釈し、結果h3のボックスの描画はボーダーの分だけになって子要素がそこにぶらさがる形になります。 h3内のfloatしている子要素の後に何か要素が置けるのであれば、その要素にclear: both;を指定すればそこでfloatが解除されるのですが、本件の場合は適切な要素がありません。この様な時は、親要素h3にclearfixを使えば楽ですね。 h3.p-title03 { (省略) zoom: 100%; } h3.p-title03:after { display: block; height: 0; visibility: hidden; content: "."; clear: both; } こういったfloatする子要素がある場合の描画については、以下などが図説入りでわかりやすいかと思います。 【参考】http://www.geocities.jp/multi_column/float/05.html #ここにも「フロートの親ボックスは高さ(height)の算出時に子のフロートを無視します。」と書いてあります。

champl
質問者

お礼

早々のご回答ありがとうございます。 どうやら私の記述ミスだったようです。 自分で「clearfix」を設定した時はダメだったんですが 今回再度設定してみましたら回避できました。 すいませんでしたこんな事でお手間取らせてしまって>< ありがとうございました。

関連するQ&A

  • スタイルシートのバグです(3)

    下記アドレスが現在テスト中のサイトのアドレスです。 添付画像の赤枠の部分が ブラウザーの文字サイズを大きくしていき 横幅がいっぱいになるとなぜかカラム落ちしてしまいます。 親ボックスには横幅のサイズを指定しているものの 子要素には特に幅のサイズ指定などはしていないにもかかわらず なぜかカラム落ちしてしまいます。 仮に子要素の幅のサイズ指定をしてみたのですがそれでも同じでした 原因がよくわかりません?? ちなみに一般的なブラウザー全てで同じ現象でした。 どなたかご教授いただけると助かります。 宜しくお願いします。 ■HTML http://sangoclip.web.fc2.com/lesson03/jyuken/ ■デフォルトCSS http://sangoclip.web.fc2.com/lesson03/shared/css/default.css ■リセットCSS http://sangoclip.web.fc2.com/lesson03/shared/css/reset.css

    • ベストアンサー
    • CSS
  • スタイルシート IE環境でのバグ

    下記アドレスが現在テスト中のサイトのアドレスです。 グローバルメニューボタン下部(添付画像の赤枠の部分)に2~3px程の白い隙間がどうしてもできてしまいます。 色々CSSの設定を試してみたのですがどうしてもWIN XP IE6の環境だけ回避できないのです その他の一般的なモダンブラウザでは大丈夫なのですが・・・ どなたか原因を教えていただけると助かります。 宜しくお願いします。 ■HTML http://sangoclip.web.fc2.com/lesson01/ ■デフォルトCSS http://sangoclip.web.fc2.com/lesson01/shared/css/default.css ■リセットCSS http://sangoclip.web.fc2.com/lesson01/shared/css/reset.css

    • ベストアンサー
    • CSS
  • スタイルシートのline-hightについて教えてください

    下記アドレスが現在テスト中のサイトのアドレスです ■HTML http://sangoclip.web.fc2.com/test/ ■デフォルトCSS http://sangoclip.web.fc2.com/test/shared/css/default.css ■リセットCSS http://sangoclip.web.fc2.com/test/shared/css/reset.css ■Yahoo! UI LibraryのFonts CSS http://sangoclip.web.fc2.com/test/shared/css/fonts.css フォントサイズは全て同じです(12px相当) ラインハイトは左から1.1 真ん中1.5 右1.8と 設定しているのですが ラインハイトの設定の違いによりそれぞれの最初の行上部と最後の行の下部の余白が違ってしまいます。 ラインハイトを大きく設定すればするほど上下に無駄な余白がとられてしまうのですが厳密に1px単位で余白を設定する際にとても困ってしまいます。 上下に余白を作りたくない時でもラインハイトの影響を受けて余白が出来てしまうのですこれはCSSの仕様上しょうがないのでしょうか?? それとも何か解決方法はあるのでしょうか? どなたかアドバイスいただけると助かります。 宜しくお願いします。

    • ベストアンサー
    • CSS
  • Win IE5.5~6.0での余白に関するバグ

    最近やっと完全スタイルシートによりコーディングをマスターする為に勉強を始め何とかある程度形になるまでコーディングが出来たのですが Win IE5.5と6.0でバグが発生してしまいました。 幅532pxのボックス内に532pxの画像を配置した所右側に1px~2pxの無駄な余白が出来てしまうのです 他のモダンブラウザーでは全て平気なのですがIE5.5と6.0でこの現象が発生してしまいます。画像を添付しましたので症状を見てください。 それと下記アドレスに現在製作中のHTMLファイルとCSSファイルをアップしてありますのでお暇な時にでも覗いていただきアドバイスいただきたくおもいます。 宜しくお願いします ■HTML http://sangoclip.web.fc2.com/test/ ■CSS(レイアウト用) http://sangoclip.web.fc2.com/test/shared/css/default.css ■CSS(デフォルトCSSクリアー用) http://sangoclip.web.fc2.com/test/shared/css/reset.css

    • ベストアンサー
    • CSS
  • スタイルシートについて

    <style type="text/css">......</style> の......の部分に見出しの大きさを変更しようとして h1{font-size:1.25em}と記入したのですが、何の変化も 起きません。これはどういったことなのでしょうか? 本当に困っています。分かる人教えてください。

    • ベストアンサー
    • HTML
  • Yahoo! UI LibraryのFonts CSSについて

    YAHOOが提供している Yahoo! UI LibraryのFonts CSSを利用して各ブラウザー毎のフォントサイズを統一しようとしているのですが 下記参考サイトで紹介している通りに設定をして使用したのですがどうもうまく適用されません。 ■参考サイト→http://thinkit.jp/article/813/1/ ちなみにYahoo! UIのFonts CSSはローカルにデータを持たずにヤフーサーバーから直接リンクして使用しています。 そもそも使用の仕方が間違っているのでしょうか?? 問題がどこにあるのかアドバイスいただけると助かります。 下記に現在テスト製作中のサイトのアドレスを記載しておきますので中身を見ていただきアドバイスいただけると助かります。 ■HTML http://sangoclip.web.fc2.com/test/ ■デフォルトCSS http://sangoclip.web.fc2.com/test/shared/css/default.css ■リセットCSS http://sangoclip.web.fc2.com/test/shared/css/reset.css ■Yahoo! UI LibraryのFonts CSS http://yui.yahooapis.com/2.6.0/build/fonts/fonts-min.css

    • 締切済み
    • CSS
  • HTML list-styleに見出し

    HTMLで、ブラウザ上での表示が 以下の様になるよう組んでいます。 ----------------------------------- コンテンツ大見出し (←大見出しはh3を使用予定) 1.見出し見出し見出し見出し   内容テキスト内容テキスト内容テキスト内容テキスト   内容テキスト内容テキスト内容テキスト内容テキスト 2.見出し見出し見出し見出し   内容テキスト内容テキスト内容テキスト内容テキスト   内容テキスト内容テキスト内容テキスト内容テキスト ~以下同様7、8項目くらい下に続く ----------------------------------- この場合、1~7項目まで続く、いわゆるリストなので list-styleを使った方がいいかな、と思い、当初 ↓ ----------------------------------- <ul> <li> <h4>見出し見出し見出し</h4> テキスト内容テキスト内容テキスト内容テキスト内容 </li> <li> <h4>見出し見出し見出し</h4> テキスト内容テキスト内容テキスト内容テキスト内容 </li> ~ </ul> ----------------------------------- と書いてみましたが、 <li>の中には<h>タグを入れるべきではないと拝見し、 では<dl>を使って ↓ ----------------------------------- <dl> <dt>見出し見出し見出し</dt> <dd>テキスト内容テキスト内容テキスト内容テキスト内容 </dd> <dt>見出し見出し見出し</dt> <dd>テキスト内容テキスト内容テキスト内容テキスト内容 </dd> ~ </dl> ----------------------------------- と組んでみました。 が、そうすると<dt>に番号がふれないのです。 どこかのサイトで、以下の様にスタイルシートに記述すればOKとありましたが dt { display: list-item; list-style: disc outside; … } 上記を記述しても実現できませんでした。 勿論「disc」の部分を「decimal」にしました。 実現方法だけで考えれば、 ・<dl>を使用して、見出し文の頭に自分で数字をつける ・<ul><li>を使用して、見出しの部分だけ<p>か何かで囲み、  スタイルシートで文字の大きさ太さを調整する ・list-styleではなく、各項目<div>で囲み、見出しは<h>タグを使う など、方法はあるのですが、 ・番号がふられている見出しはそれなりに重要視しているので  できればhタグか、見出しだと分かるタグを使用したい。 ・番号がふられているリスト(のようなもの)なのでlist-styleが適当のような気がする。 このような場合、皆さんはどう記述されていますか? どのような記述が正しいのでしょうか。 宜しくお願いします。

    • ベストアンサー
    • CSS
  • cssスタイルシートのリセット

    cssで例えば<h1>が以下のように設定されているとき h1 { color: #000; background: none; font-weight: normal; margin: 0; padding-top: .5em; padding-bottom: .17em; border-bottom: 1px solid #aaa; } 以下のようにすると h1.blue { color: #00f; } blueクラスの文字色は青になりますが他のプロパティーは<h1>の設定が継承されます。 <h1>のcss設定を全てデフォルトに戻してblueクラスのcssを新規に設定しなおす方法を教えてください。(<h1>の設定値を全部書き直すのは別として....)

  • IE7でclearfixが効かない?

    winXP環境、xhtml+cssでwebページを作成していますが、壁にぶち当たっています。 親ボックスの中に2つの子ボックスをfloatでレイアウト、というよくあるパターンですが、親ボックスにclearfixを指定しているのにIE7で表示すると、floatさせたdivが親ボックスからはみ出した状態で表示されます。 Firefox3/IE6/IE8で表示確認すると問題なく表示されます。 ■htmlソース http://bangn.web.fc2.com/testpage.html ■CSSソース http://bangn.web.fc2.com/css/default.css(デフォルトスタイルリセット用) http://bangn.web.fc2.com/css/base.css(divレイアウト、clearfix) http://bangn.web.fc2.com/css/kakunin.css(レイアウト確認用に各divのborderを黒くしたもの) htmlの書き方がおかしいのか?clearfixの記述がおかしいのか?とソースを何度も見直ししましたが、解決に至らず困っております。 どなたかアドバイスをいただけないでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • CSS
  • スタイルシートの書き方

    HPの中に以下のようなテーブルを並べて作っているのですが、後からまとめて編集しやすいようにCSSファイルを別に作ろうと思います。 自分であれこれ試してはいるのですが、スマートな(?)スタイルシートの書き方がいまいちわかりません。 どのように指定すればいいでしょうか? 因みに下のタグもかなり自己流な部分があるのではないかと思うので、おかしいところがあれば指摘してください。 よろしくお願いします。 ------------------------------------------------------ <table border="0" bgcolor="#000000" cellspacing="0" cellpadding="0"> <tr> <td> <table border="0" cellspacing="1" cellpadding="2" width="500"> <tr><td bgcolor="#ffffff" width="150">AAA</td><td>BBB</td></tr> </table> </td> </tr> </table>

    • ベストアンサー
    • CSS

専門家に質問してみよう