タグを使用してさまざまな要素 (ヘッダー/バナーとメニュー) を分離する Web ページをセットアップしようとしています。後でコンテンツが追加されますが、今のところ十分な問題があります。
私のdivは次のように配置されています:
<!-- Header showing banner and sitename -->
<div class="header">
pagetitle
</div>
<!-- Small space for the menu -->
<div class="menu">
<a class="menuItem" href="google.com">Google is here!</a>
<a class="menuItem" href="somewhere.com">Work work</a>
</div>
それらを正しく配置するために、CSSスタイルシートを使用します(私はCSSが初めてで、これが私の問題だと思います...)
/* Holds the style information for the header/banner */
div.header{
/* Size of div/header */
width:900px;
height:200px;
/* Header image, main content actually */
background-image:url('../img/header.png');
/* Font look */
font-family:"Lucida Console","Curier New",Monospace;
font-size:75px;
color:#CCCCCC;
text-align:right;
/* Used for putting text in buttom right corner.
* -->NOT<-- supported in IE8 and earlier.
*/
display:table-cell;
vertical-align:bottom;
}
/* Holds the style information for the menu */
div.menu{
/* Size of div/menu */
width:900px;
height:50px;
/* Background for the menu */
background-image:url('../img/menu.png');
/* Positioning of items */
text-align:center;
vertical-align:middle;
/* FIXME: Causes the menu to jump up next to the header!
* NOT VERY GOOD BEHAVIOUR!
*/
display:table-cell;
}
これで、「display:table-cell」と「vertical-align」部分を使用して、テキストを垂直方向に正しく配置できます。そして正常に動作し、テキストはdivに正しく配置されますが、複数存在する場合、それらは隣同士にジャンプします。これはすべきではありません。
私の考えでは、非常に汚い解決策が2つ見つかりました。でdivを区切る
<p></p>
また
</br>
しかし、私は本当にそれが方法だとは思わない... CSSシートでこれを解決する良い方法はありますか?
私の問題の「ライブ デモ」については、次の URL にアクセスしてください。ヘッダーは、実際のレンダリング中のプレースホルダーです。あなたが私を助けてくれることを願っています。