私が作成している私のウェブサイトには、次のコードがあります。
.menu{
}
.menu a{
text-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
color: #d7d7d7;
font: bold 16px Arial,Helvetica,Sans-serif;
text-decoration: none;
border-radius: 10px;
background-color: #444;
padding: 5px 10px;
text-align: center;
-webkit-transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
-o-transition: all 0.3s ease 0s;
transition: all 0.3s ease 0s;
}
.menu a:hover{
border: double 6px #00F;
color: #00F;
background-color: #FFF;
font: bold 20px Arial,Helvetica,Sans-serif;
text-decoration: underline;
text-align: center;
}
.sidebar{
width:220px;
margin-top:8px;
margin-left:3px;
background-color:#CCC;
border-radius:10px;
padding:10px;
clear:left;
-moz-box-shadow: inset 0 0 5px 5px #888;
-webkit-box-shadow: inset 0 0 5px 5px #888;
box-shadow: inset 0 0 5px 5px #888;
}
.sidebar p{
text-align: center;
}
HTML コード:
<div class="sidebar">
<b style="color:#666;">Menu</b>
<div class="menu">
<p><a href="#">Profile</a></p>
<p><a href="#">Friends</a></p>
<p><a href="#">Community Service</a></p>
<p><a href="#">Messages</a></p>
</div>
</div>
何らかの理由で、このようにアンカーを重ねて配置できる唯一の方法は、アンカーを段落タグに配置することですが、それは望ましくありません。以下は、すべてのコードがどのように見えるかを示した図です。
メニューを [ログインしてアカウントを作成] ボタンのようにしたいのですが、CSS に違いはありません。それらを区別できる唯一のことは、それらを含む div がテーブルに配置されていることです。それで、私はどうすれば同じ幅と高さを上と下のdivのように達成できるのだろうと思っていました。また、それをテーブルに入れてみましたが、それを一緒に押しつぶして丸いエッジを取り出しました(.menuのCSS display: table およびdisplay: table-cell アンカーも、押しつぶされるため機能しません)。これが私のコードの残りの部分です: http://pastebin.com/ZLS94ZvQご協力ありがとうございます!