• 締切済み

margin,paddingなどで困ったことがあります。

現在、HPを作っています。 そこで相談なのですが、FirefoxやOpera、IE8、IE8のIE7互換モードなどで表示の違いがありました。 その部分のソースはこちらです <div class="menu"> <span><h4>Link</h4></span> <p><a href="javascript:void(0)">リンク1</a></p> <p><a href="javascript:void(0)">リンク2</a></p> </div> そしてCSSのソース(一部)です。 div.menu{ font-size: 10pt; color: #000000; font-weight: bold; margin: 3px; padding: 4px; border: 4px groove #000000; width: 178px; background-color: #eeeeee; } div.menu span{ display: block; text-align: center; } div.menu h4{ color: #000000; font-size: 26px; padding-bottom: 10px; padding-top: 10px; } このCSSのソースのどこを修正すれば、正しい表示になるでしょうか? 表示は送付画像のような表示です。

noname#119508
noname#119508
  • HTML
  • 回答数1
  • ありがとう数1

みんなの回答

  • no4nejp
  • ベストアンサー率100% (3/3)
回答No.1

こんばんは。 どうすれば正しくなるのかとありますが、 画像の左右どちらを意図しているのかが分からないのでその点について解答することが出来ません。 また、cssでコーディングを行う時、今回のような問題を極力避けるために、スタイルの最初に *{ margin: 0; padding: 0; } と記載するのがベターです。 (色々な方法がありますが、初めはこの方法で良いと思います) こうすることで、ブラウザで異なるmargin, paddingの設定を完全にリセットできます。 今回の問題では上記のリセットを行い、span要素やh4要素、a要素にそれぞれ細かくスタイル指定するのが良いです。 蛇足ですが、<span><h4>foobarbaz</h4></span>という記述は、たとえspan要素をdisplay: block;していても良くないです。 この場合は<div><h4>foobarbaz</h4></div>とするのが良いでしょう。

noname#119508
質問者

お礼

ご回答ありがとうございました。

noname#119508
質問者

補足

* { margin: 0; padding: 0; } と一応、CSSに書き込んであります。 あと、『正しい表示になるでしょうか?』と、発言しましたが、『ほぼ同じ表示になるでしょうか?』に訂正させていただきます。 あと、画像が、切れているように見えますが、別のタブで、直接表示すると表示できるみたいです。

関連するQ&A

  • paddingとpositionが分かりません

    html&cssの超初心者です。勉強している教本で下記のソースがあり、cssのdiv.introの「徒然なるままに」と「 MyWeb」の間が狭いので「徒然なるままに」の左側に余白を入れたいのですが、どうもうまくいきません。 padding-left: 10px; とかpadding: 0px 0px 0px 10px; と試みたのですがダメで、position: relative; left: 10px; と入力すると移動しました。このソースのそれぞれのdivの中でにpaddingで移動するところとpositionで移動する箇所があり、その理由がわかりません。どなたか教えてくれませんか? よろしくお願い致します。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html ; charset=Shift_JIS"> <title>代表的な段組を記述する</title> <style type="text/css"> body { margin: 0px; padding: 0px; } div.title { float: left; width: 200px; } div.title h1 { margin: 0px; font-size: 300%; font-family: "Times New Roman",Century,serif; background-color: #00aa00; color: white; text-align: center; } div.intro { font-size: 90%; padding: 0.5em; } div.navi { clear: both; background-color: green; color: yellow; padding: 3px; font-family: Verdana,sans-serif; } div.navi a { color: white; text-decoration: none; } div.menu { float: left; width: 25%; padding: 0.5em; margin-right: 0.3em; border-right: dashed 1px green; background-color: #ccffcc; } div.main { padding: 0.5em 1em; } div.main h2 { font-family: Verdana,Arial,sans-serif; margin: 0px; border-bottom: solid 3px #00cc00; } div.main p { line-height: 1.4; } div.footer { clear: both; background-color: green; color: white; padding: 3px; } div.footer p.returnlink { text-align: center; margin: 0em 0px 0.5em 0px; } div.footer p.returnlink a { color: white; } div.footer p.copyright { margin: 0px; font-size: 80%; font-family: Verdana,Arial,sans-serif; text-align: right; } </style> </head> <body> <div class="title"> <h1>MyWeb</h1> </div> <div class="intro"> 徒然なるままに、日記を書いてみたり駄文を書いてみたり…。掲示板へのネタ投稿も歓迎です。(^-^) </div> <div class="navi"> <a href="home.html">HOME</a> | <a href="prof.html">プロフィール</a> | <a href="diary.html">日記</a> | <a href="essay.html">エッセイ</a> | <a href="bbs.html">掲示板</a> | <a href="links.html">リンク</a> </div> <div class="menu"> <p>日記メニュー</p> <ul> <li><a href="200X08.html">200X年 8月</a></li> <li><a href="200X07.html">200X年 7月</a></li> <li><a href="200X06.html">200X年 6月</a></li> <li><a href="200X05.html">200X年 5月</a></li> <li><a href="200X04.html">200X年 4月</a></li> <li><a href="200X03.html">200X年 3月</a></li> </ul> </div> <div class="main"> <h2>200X年9月</h2> <p> 9月になりました。朝夕の電車内には(大学生を除く)学生の姿も多くなりました。 学生の夏休みは終わったようですが、私はまだ今年の夏休みを取っていません…。 ああー、いつ休めるのかなあ。(^_^;) </p> </div> <div class="footer"> <p class="returnlink"><a href="home.html">HOMEへ戻る</a></p> <p class="copyright">Copyright &copy; 200X Sakura Kinomoto.</p> </div> </body> </html>

    • ベストアンサー
    • HTML
  • firefoxでmargin-topが効かない

    下記のソースとCSSでHPを制作しています、 ナビゲーション<ul id="menu">その下に <!-- content --> <div class="title">としてimgを入れてます、 ナビゲーションと<div class="title">の間に<div class="title">側で margin-top : 20px;を指定しました、IE6・7・8では希望通り表示されますがfirefoxではmargin-top : 20px;が無視されているのか ナビゲーションと<div class="title">の間がくっついて表示されます。 どなたか解決策、間違いがありましたらご指導ください、お願いします。 ソース記述 <!-- menu --> <ul id="menu"> <li id="mnu1"><a href="index.html" id="index.html" name="index.html" onmouseout="HpbImgSwap('_HPB_ROLLOVER1', 'menu/menu1.gif');" onmouseover="HpbImgSwap('_HPB_ROLLOVER1', 'menu/menu01.gif');"><img src="menu/menu1.gif" width="114" height="44" alt="HOME" name="_HPB_ROLLOVER1" /></a></li> 以下省略 </ul> <!-- /menu --> <!-- content --> <div class="title"><img src="img/titlebar.gif" width="772" height="37" alt="楽しいケーキ作り" /> <h2>まずは生地作りから</h2> <p>●********** <br /> <p> </div> CSS記述 ul#menu{ margin-top : 0px; margin-left : 0px; margin-right : 0px; margin-bottom : 0px; padding: 0px; } ul#menu li{ float : left; list-style-type : none; .title{ margin-left : 14px; margin-bottom : 5px; margin-top : 20px; width : 772px; } .title h2{ font-size : 15px; padding-top : 12px; padding-left : 23px; margin-bottom : 20px; font-weight : bold; font-family: Arial,"MS Pゴシック","MS UI Gothic",Osaka,Sans-Serif; margin-top : -40px; } .title p{ font-size : 14px; color : #ffffff; padding-left : 20px; line-height : 1.6; margin-bottom : 10px; margin-top : 0px; width : 772px; font-family: Arial,"MS Pゴシック","MS UI Gothic",Osaka,Sans-Serif; letter-spacing : 1px; } 以上宜しくお願いします。

  • HP製作 paddingやmarginが効かない

    お世話になっております、表題の件、 非常に低レベルな質問になるかと思いますが 失礼致します。 現在、ワードプレスのtwentyelevenをカスタマイズし、 ホームページを作成しておりますが sidebar.phpを編集してCSSを効かせようとしているのですが paddingやmarginなどが反映されず困っております。 #secondaryという<div>の中にある <p>にpaddingをかけようとしており、 サイドバーの中のリンクを右に寄せて リンクの色を黒に統一しようとしており、 リンクの色は黒に変更したのですが、 paddingが効きません。 ※コード #secondary .sidebar_font (padding-left:20px;} .sidebar_font a:link { color: #000; } .sidebar_font a:visited { color: #000; } .sidebar_font a:hover { color: #000; } .sidebar_font a:active { color: #000; } #secondaryのスタイルによってpaddingやmarginが効かなくなることがあるのでしょうか? 大変恐縮ですが ご助力戴ければ幸いでございます。

    • ベストアンサー
    • CSS
  • スタイルシートを使用したサイト作りで

    サイトページの真ん中に450pxの白の柱に本文を入れ、周りをすべて黒というスタイルにしたく思ってます。 柱をウィンドウの上から下まで表示したいのですが、どうしてもうまくいきません。どうぞ御指南下さい!!作ったタグを載せます。 *{margin:0; padding:0; font:normal normal normal x-small/1.5em Verdana,"MS ゴシック",Osaka,Gothic,sans-serif;} body{ height:100%; background-color:#000000; color:#000000; cursor:default;} br{ letter-spacing:normal;} #body{margin:0px auto; width:450px; height:100%; background:#ffffff;} #header{padding:0px} #menu{padding:0px 0px 5px; text-align:center;} #main{padding:0px 10px;} #navi{text-align:right; padding:0px 10px;} #foot{height:123px; background:url(img/img2.gif) no-repeat 0% 0%;} .text{padding:0px 0px 10px;} p{padding:1px 0px;} h1,h2{font-weight:bold;} h1{text-align:center; color:#666666; font-size:190%; padding:10px 0px 0px;} h2{ text-align:left; color:#000000; font-size:100%; padding:0px 2px; margin:5px 0px;} サイトページ <body> <div id="body"> <div id="menu"> <h1 id="TOP">- ABOUT - </h1> </div> <hr class="none"> <hr class="none"> <div id="main"> <h2>test</h2> <div class="text"> <p>test</p> </div> <h2>test</h2> <div class="text"> <p> test </p> </div> </div> <div id="navi"> <p>INDEX // <a href="#TOP">PAGE TOP</a> // </p> </div> </div> </body> </html>

  • ネスケとIEを同じ表示にしたい

    文字をborderで囲ったものを二列に6つずつ並べて、サイトのメニューとして 使っています。 HTMLを以下のように記し、↓ <div> <span class="menu"><a href="#">AAA</a></span> <span class="menu"><a href="#">BBB</a></span> …… </div> <div> <span class="menu"><a href="#">CCC</a></span> <span class="menu"><a href="#">DDD</a></span> …… </div> これをcssで以下のようにしているのですが、ネスケで上手く表示されません 。 .menu { font-size: 13px; text-align: center; margin: 2px; border:1px solid gray; width: 97px; height: 15px; color: #808080; } どうも、marginとwidth、heightが反映されていないようなのですが、これを ネスケでも反映させるにはどうしたらいいでしょうか。 宜しくお願いします。

    • ベストアンサー
    • HTML
  • marginを指定した見出し要素の後に段落要素をつけるとmarginが変なことになります。

    CSSとHTMLでホームページを作っています。 ですがなぜかIEの表示のみ、妙な表示になります。 <h3>などの見出しタグで見出しを作り、そのあとに段落でいろいろ指定していると、なぜか見出しのマージンが後の段落に影響します(IEのみ)。 この対策法を教えていただけないでしょうか? ソース(一部を抜粋、少し書き換え)は HTMLは4.01 Traditional(DTDあり)で、 <h3 class="st">ABOUT</h3> <p> ここは×××の管理する、・・・・サイトです。<br> ●●はメインからどうぞ。 </p> <h3 class="st">Update Log</h3> <p> 2009/03/24 ああああああああ<br> 2009/03/23 あああああああああ<br> ああ<br> </p> CSSは h3.st{color:#727171;background-color:#ffffff;font-size:95%;text-align:center;margin:0px 25px;padding:3px 0px;border-bottom:#87ccd4 1px dotted} p{text-align:left;margin:0px;padding:3px 32px;line-height:200%;font-size:90%;} です。 CSS内で、CLASS要素を指定した他のpタグにfloatを指定しましたが、それが影響しているかと思って消してみても変わりません。 どうかよろしくお願いします。

    • ベストアンサー
    • HTML
  • 直接書き込むCSSを外部ファイルに設定したい

    CSS初心者です。下記の携帯テンプレートを使ってサイトを作りたいです。 タグに直接書き込むタイプのCSSが多いのですが、 このソースの一部を外部ファイルに設定するには、どういう書き方をしたら良いでしょうか? 【外部に設定したい項目】 ★タイトル下線のMARGIN-RIGHT: 47% ★真ん中の線(画像位置)BACKGROUND-POSITION: 53% ★一番下線のMARGIN-LEFT: 53%; 外部にしたい理由は携帯とパソコンで見た時にそれぞれ線の位置を変えたいと思って いるからです。出来ますでしょうか?CSSに詳しい方、どうかお願いします(>_<) 【全タグ】 <html> <HEAD> <TITLE>TITLE</TITLE> </HEAD> タイトル <H1 style="PADDING-LEFT: 7px; MARGIN: 0px; PADDING-TOP: 10px; BACKGROUND-COLOR: #ffffff"></H1> <DIV style="BACKGROUND-POSITION: 53% 40%; BACKGROUND-IMAGE: url(http://deai.mokuren.ne.jp/up/src/up3891.gif); BACKGROUND-REPEAT: repeat-y"> <DIV style="BORDER-TOP: #000000 1px solid; MARGIN-RIGHT: 47%"> <P style="PADDING-RIGHT: 0px; PADDING-LEFT: 15px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 7px"></P></DIV> <DIV style="MARGIN-LEFT: 40%; PADDING-TOP: 17px"> <DIV style="WIDTH: 300px; MARGIN-RIGHT: 20px"> <H2 style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 13px; PADDING-BOTTOM: 2px; MARGIN: 0px 0px 3px; PADDING-TOP: 3px; BACKGROUND-COLOR: #000000"> <font color="#ffffff">コンテンツ</font></H2></font> <div style="border:solid 1px #000000;margin-bottom:5px; padding:5px;background-color:#ffffff;"><Font Color="#000000"><A Href="">小説</a></div> <div style="border:solid 1px #000000;margin-bottom:5px; padding:5px;background-color:#ffffff;"><Font Color="#000000"><A Href="">小説2</a></div> <div style="border:solid 1px #000000;margin-bottom:5px; padding:5px;background-color:#ffffff;"><Font Color="#000000"><A Href="">その他</a></div> </DIV></DIV> <DIV style="MARGIN-LEFT: 53%; BORDER-BOTTOM: #000000 1px solid"> <P style="PADDING-RIGHT: 5px; MARGIN: 0px; PADDING-TOP: 17px" align=right></DIV></DIV> <P style="PADDING-RIGHT: 5px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; MARGIN: 0px; PADDING-TOP: 5px" align=right> </HTML>

    • 締切済み
    • CSS
  • フレーム使用時のメニューバーについて

    フレームを使ったホームページを作成しました。 フレームのファイル名をindex.htmlに index.htmlだったファイルをtop.htmlにかえて アップロードしたところ、 メニューバーがきちんと表示されません。 パソコン上で確認するときは問題ないので 理由が分かりません。 どなたか教えてください。 メニューのHTMLは <style type="text/css"><!-- body {background-color:firebrick} div.menutitle {color:white; font-family:'Comic Sans MS'; font-size:40px; font-weight:bold; border-bottom-style:dotted; border-bottom-color:white; margin-bottom:30px} a:link {color:white} a:visited {color:yellow} a {text-decoration:none; font-size:18px; font-weight:bold;} div.menu {font-family:'Arial'; background-color:maroon; padding-left:5px; padding-top:7px; padding-bottom:7px; margin-bottom:10px} --!></style> </head> <body> <div class="menutitle" lang="en">menu</div> <div class="menu"> <a href="top.html" target="main">top</a></div> <div class="menu"> <a href="">gallary</a></div> <div class="menu"> <a href="http://8520.teacup.com/**/bbs" target="main">bbs</a></div> <div class="menu"> <a href="">link</a></div> </body> </html> です。よろしくおねがいします。

    • ベストアンサー
    • HTML
  • Firefoxでpaddingが反映されません。

    現在WEBサイトを作っているのですが、IEとFirefoxで確認を行ってみたところ、IEでは正しく表示されるのですがFirefoxだとうまく表示されません。 paddingの指定なんですが、Firefoxだけうまく寄ってくれません、何がいけないのでしょうか(T_T) CSS部分は以下のようになります。 .menu { color: #000000; padding : 5px 0px 0px 30px; font-size : 14px; text-align: left; font-weight: bold; text-transform: uppercase; letter-spacing: .3em; } 問題はpaddingの30pxというところで、左側から30px離したいのですが、全く変わりません。 分かる方いましたら、アドバイス宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • レイアウト、フッターが崩れてしまいます。

    横800pxの外枠にフッター部分を枠内の下に綺麗に収まるよう配置したいのですが、ブラウザーで確認するとフッター部が上に配置されてたり、mainのテキスト部分や外枠のレイアウトが表示されてなかったり、崩れてしまいます。またsafari、firefoxを使って確認してるのですが、同じように表示されません。どこが間違っているのか、教えて頂けると助かります。 *html <body> <div id="wrapper"> <div id="headir"> <h1>The highest hiphop design All group</h1> <div class="logo"><img src="#”></div> </div> <span id="menu"><ul><li><img src="#" alt="#" width="200" height="100" /></li><li><img src="#" alt="#" width="200" height="100" /></li><li><img src=”#" alt="#" width="200" height="100" /></li><li><img src="#" alt="#" width="200" height="100" /></li></ul></span> <h2><img src="#" alt="#" /></h2> <span id="sidemenu"> <ul> <li><a href="#">TOP</a></li> <br /> <li><a href="#">NEW</a></li> <br /> <li><a href="#">Line</a></li> <br /> <li><a href="#">Fine</a></li> <br /> <li><a href="#">Mail</a></li> <br /> <li><a href="#">TOP02</a></li> <br /> <li><a href="#">NEW02</a></li> <br /> <li><a href="#">Line02</a></li> <br /> <li><a href="#">Fine02</a></li> <br /> <li><a href="#">Mail02</a></li> </ul> </span> <div id="main"> ~~ ~~ </div> <div id="footer"> <span align="center">&copy;#</span> </div> </div> </body> </html> *css body { font-family: "MS P明朝", "細明朝体", "ヒラギノ明朝 Pro W3"; margin:0px; padding:0px; } #wrapper { margin: auto; padding:auto; height: 100%; width: 800px; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-left-style: solid; border-top-color: #000000; border-right-color: #000000; border-left-color: #000000; border-bottom-style: solid; border-bottom-color: #000000; } #headir { padding: 0px; margin:0px; height: 220px; width: 800px; } #headir h1{ margin: 0px; padding: 0px; height:20px; font-family: "MS P明朝", "細明朝体", "ヒラギノ明朝 Pro W3"; font-size:small; text-align: left; } .logo{ padding-bottom:20px;} #menu ul { padding-top : 0px; padding-left : 0px; padding-right : 0px; padding-bottom : 0px; margin-top : 0px; margin-left : 0px; margin-right : 0px; margin-bottom : 0px; width:800px; height:100px; list-style-type : none; } #menu li{ display:inline; padding-bottom:20px; } span#sidemenu { height: 300px; width: 50px; float:left; margin-top: -19px; margin-right: 8px; margin-bottom: 0px; margin-left: 0px; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #000000; border-right-color: #000000; border-bottom-color: #000000; border-left-color: #000000; font-size: smaller; } span#sidemenu li{ list-style-type:none; text-indent: -30px; } span#sidemenu{ padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } div#main { margin-top: 20px; margin-right: 40px; margin-left:30px; margin-bottom:20px; font-size: small; text-align: left; left: 150px; light: 50px; height: 400px; width: 600px; } div#main p { padding-left:10px; padding-light:20px; padding-top:10px; padding-bottom:20px; } #footer{ height:30px; width:100%; background-color: #CC9933; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border: 1; border-left-width: 1px; border-left: 1; z-index: 2; position: relative; margin: 0; padding: 20px 0 0 20px; }