現在、サイトをHTMLからHTML5に移行中なのですが、リストを横並びにするところまではできたのですが、それをセンタリングするにはどうしたら良いでしょうか?
さまざまなサイトを巡ってやり方を拝見したのですが、目的とするものがありませんでした。
現在のHTML
<!-- ヘッダ開始 -->
<div id="header">
<h1>サイトタイトル</h1>
<p class="catch"><strong>サイト説明</strong></p>
<div class="opening">
<h2><img src=".jpg" alt="表示されなかった画像の説明的な" width="900" height="260"></h2>
</div>
<ul class="nl clearFix">
<li class="active"><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li><a href="#">6</a></li>
<li><a href="#">7</a></li>
</ul>
<hr class="none">
</div>
<!-- ヘッダ終了 -->
現在のcss
/* --- ヘッダメニュー --- */
#header ul.nl {
width: 100%; /* IE 6のために幅の指定が必要 */
margin: 0 auto;
padding: 0;
background-color: #ffffff; /* ヘッダメニューの背景色 */
list-style-type: none;
text-align: center;
}
/* メニュー項目 */
#header ul.nl li {
width: 124px; /* 項目の幅 */
float: left;
line-height: 100%;
}
/* 最初の項目と最後の項目 */
#header ul.nl li.first,
#header ul.nl li.last {
width: 125px; /* 項目の幅 */
}
わかりにくいと思いますが、上のように配置したいのです。
まだイマイチ理解しきれていないのですが、回答していただければと思います。
↓HPの現状。
http://dateme.web.fc2.com/top.html
No.1
- 回答日時:
どこをHTML5に移行ですか? 今、CSSを調整するのは無意味なのでは?
またやり直す事になるので、HTML.verをどちらかに決定してからの方が良いと思いますよ・・・
---------------------------------
今のままでは、それぞれ不具合が起こしそうですが・・・
センターリングの応急処置なら、
width: 100%; /* IE 6のために幅の指定が必要 */
↓ ↓
width: 869px;
など「(リスト幅124px×リスト項目数)+1px」のようにwidth幅を固定すればセンターになるでしょう。
No.2
- 回答日時:
HTML5は、文書構造をきちんと示すことか望まれます。
HTML4.01で、【引用】____________ここから
DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[The global structure of an HTML document (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )]より
と書かれていた部分が、多くの人に理解してもらえなくて、<p class="catch"><strong>サイト説明</strong></p><div class="opening">などの変なマークアップがされていたことの反省から出発しています。ですからこの様なマークアップでHTML5はありえません。
<body>
<header>
<hgroup>
<h1>サイトタイトル</h1>
<h2>サイト説明<//h2>
</hgroup>
<nav>
<ul>
<li><a href="#" class="curent">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li><a href="#">6</a></li>
<li><a href="#">7</a></li>
</ul>
</nav>
<header>
とかになるはず、さらに言うともしこのnavがサイト全体のナビゲーションなら、ここではなくfooterに入るべきものですね。このページ内の目次ならここでよい。
そのうえでスタイルシートを書きますが、デザインのためにidやclass名は一切不要なはずです。だって、そのためにHTML5で新しい要素が加わったのですから。
No.3ベストアンサー
- 回答日時:
中央に配置するためには、display:inline-block;とtext-align:center;です。
HTMLには<!-- -->を追加。いずれにしても、HTML5としてとてもたくさんの間違いがあります。
HTML5には、Transitionalはありません。199年勧告のHTML4.01以来、Transitionalは非推奨で、XHTML1.1,XHTML2(中止)、HTML5では予告どおり、廃止です。
★→「HTML文書を作る場合には、この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。--HTML4.01仕様書 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」
★HTML5は<img />ではありません。<img>です。
★<div>は原則使いません。使っても文書構造を示すclass/idと併用します。clearFix、sideなんてつけない。他のデザインに変更するときclearしなかったり、側に置かないときどうします??。
そうするとHTML5+CSSだと下のサンプルのように極めてシンプルになります。そして、それぞれが何を指定しているか一目瞭然でしょう。
スマートホン、firefox,Opera,GoogleChromeなどHTML5対応のブラウザ向けですが、IEにも対応させてあります。ウィンドウ巾もスマホ用に640pxまで縮められます。もちろん幅広ウィンドウでもOK。それでもこんなに簡単になります。
★HTML5に挑戦する前に、資料の豊富なHTML4.01strictをしっかり身につけるほうが良いです。それが出来たら「HTML5 における HTML4 からの変更点 ( http://standards.mitsue.co.jp/resources/w3c/TR/h … )」を読む。
下記、HTMLをHTML4.01にするときは、<header>などを<div class="header">のようにdiv+classにして、スタイルシートを書き換える。
<!DOCTYPE html>
<html lang="ja">
<head>
_<meta charset="utf-8">
_<meta name="description" content="オリジナル又は版権イラストを中心としたさいと。">
_<meta name="keyword" content="伊達眼鏡,イラスト,テニスの王子様,BASARA">
_<!-- utf8で記述し、charsetは書かない -->
_<!-- Content-Style-Type,Content-Script-Typeは書かない -->
_<title>伊達眼鏡</title>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5. …
<![endif]-->
<style type="text/css">
<!--
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary{
_display:block;
}
body header,body section,body footer{
_width:90%;
_min-width:640px;max-width:900px;
_margin:0 auto;
}
body>section{padding-top:42px;position:relative;}
section nav{line-height:40px;width:100%;text-align:center;position:absolute;top:0;}
section nav ul,section nav ul li{list-style:none;margin:0;padding:0;text-align:center;}
section nav ul{display:block;}
section nav ul li{display:inline-block;width:13.5%;border:solid 1px blue;}
section nav ul li a{display:block;color:transparent;}
section nav ul li a:hover,section nav ul li a:focus{background-color:aqua;}
section nav ul li a:active{background-color:lime;}
section section{margin-right:21%;}
section aside{position:absolute;top:45px;right:0;width:20%;background-color:silver;}
body>section>section>h2{background-color:silver;color:red;margin-right:21%;}
section.news dl,section.news dl dt,section.news dl dd{display:block;padding:0;}
section.news dl dt{width:8em;float:left;line-height:2em;}
section.news dl dd{border-bottom: 1px dotted #C0C0C0;margin-right:21%;}
-->
_</style>
</head>
<body>
_<header id="top">
__<h1>伊達眼鏡</h1>
__<p>イラストや漫画を中心に活動しております。</p>
__<p>また、いずれはゲーム製作が出来たらな…、と思っております。</p>
__<p><img src=".jpg" title="表示されなかった画像の説明的な" alt="画像の代わりに表示するテキスト" width="900" height="260"></p>
_</header>
_<section>
_<h2>本文記事</h2>
__<nav>
___<ul>
____<li class="curent"><a href="#">Home</a></li><!--
____--><li><a href="">利用規約</a></li><!--
____--><li><a href="">イラスト</a></li><!--
____--><li><a href="">漫画</a></li><!--
____--><li><a href="">掲示板</a></li><!--
____--><li><a href="">相互サイト</a></li><!--
____--><li><a href="">メール</a></li>
___</ul>
__</nav>
__<section class="news" id="News">
___<h2>新着情報</h2>
___<dl>
____<dt>2010/04/03</dt>
____<dd>サンプルテキスト、サンプルテキスト。サンプルテキスト、サンプルテキスト。</dd>
____<dt>2010/03/25</dt>
____<dd>サンプルテキスト、サンプルテキスト。サンプルテキスト、サンプルテキスト。</dd>
___</dl>
__</section>
__<aside>
___<details>
____<summary>オリジナル(例)</summary>
____<ul>
_____<li><a href="">テニプリ</a></li>
_____<li>テキスト2</li>
_____<li>テキスト3</li>
_____<li>テキスト4</li>
_____<li>テキスト5</li>
____</ul>
___</details>
__</aside>
_</section>
_<footer>
__<nav>
___<ul class="nl">
____<li><a href="type1_design1_top.html">ホーム</a></li>
____<li><a href="type1_design1_low.html">サービス内容</a></li>
____<li><a href="#">制作実績</a></li>
____<li><a href="#">料金表</a></li>
____<li><a href="#">会社案内</a></li>
____<li><a href="#">お問い合わせ</a></li>
___</ul>
__</nav>
__<p><img src="/counter_img.php?id=50" style="visibility:hidden" alt="inserted by FC2 system" width="0" height="0"></p>
_</footer>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS htmlについて質問です! 写真のように写真の部分が?になってしまいます。 ファイルもしっかり選べて 1 2023/07/09 21:17
- HTML・CSS htmltとcssの連携をして画像縮小について 1 2022/11/15 20:32
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
html/cssの、navを2段にする...
-
css 横並びのナビゲーションバ...
-
<table>の高さ固定。情報増加時...
-
番号付きリスト(<Ol><Li>・・...
-
html <li>の中の文字一部に色を...
-
htmlの<ol>タグで、数字などを...
-
リストマーカーをボックス内に...
-
CSSでの<ul><li>を使った改行設定
-
list-style-type部分だけ大きく...
-
リストを2つに分割して、それぞ...
-
カルーセルスライダー「slick.j...
-
CSS使用。表のセルの中で、強制...
-
display:table;を多段表示させたい
-
ulタグやliタグの中でbrタグ...
-
複数行にまたがる括弧を表示し...
-
リストの左余白の削除方法
-
HTMLで組織図を作成する方法
-
ひとつの枠(divとかtable)の...
-
マウスアウト後も画像が消えた...
-
ポップアップメニューを表のよ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
番号付きリスト(<Ol><Li>・・...
-
liタグの中に<p>タグやら<dl>を...
-
レスポンシブWebデザインでリン...
-
<table>の高さ固定。情報増加時...
-
<ul><li></li></ul>にするメリ...
-
リストの数字のフォントサイズ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
divタグ内のコンテンツが重なっ...
-
画像にリンクを張ると画像がず...
-
複数行にまたがる括弧を表示し...
-
ページを開いているときのリン...
-
html <ul></ul>の並びで一行空...
-
html/cssの、navを2段にする...
-
HTML5のfooterに見出しを付けて...
-
<ul>~</ul>が二つ続くと間に改...
-
htmlの<ol>タグで、数字などを...
-
リンク文字同士の間隔を開ける...
-
CSSでつくったメニューのアニメ...
おすすめ情報