次の問題を考えてみましょう: メニューを中央に配置すると、メニューの内容が変更されます (たとえば、ボタンを押した後、最初のボタンの内容は、「こんにちは」から「ユーザーへの挨拶」またはそれに沿ったものに設定されます)。行. 重要なことは、要素の幅が変数になることです.
要素のコンテンツも中央揃えにしたいとします。私が見つけたアプローチは基本的にこれです:
.centerMe1 {
margin-right: auto ;
margin-left: auto ;
max-width: 500px;
}
要素の幅がわからないため、この場合は使用できないことを除いて、これは非常にうまく機能します。親の幅が子の幅と等しくなるように設定するため、 float:left を使用しようとしましたが、機能しませんでした。基本的に、幅は正しく設定されていましたが、要素が中央に配置されていませんでした。
これは 2 番目のクラスです。
.centerMe2 {
margin-right: auto ;
float: left;
margin-left: auto ;
}
そしてソースコード全体(テストを簡単にするため)
<!DOCTYPE html>
<html>
<head>
<title>Center Error</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<link href="bootstrap.min.css" rel="stylesheet" type="text/css" />
<link href="bootstrap-responsive.min.css" rel="stylesheet" type="text/css" />
<script src="http://code.jquery.com/jquery.js"></script>
<style type="text/css">
.centerMe1 {
margin-right: auto ;
margin-left: auto ;
max-width:500px;
}
.centerMe2 {
margin-right: auto ;
float: left;
margin-left: auto ;
}
</style>
</head>
<body>
<div class="row-fluid">
<div class="span12">
<ul class="nav nav-pills centerMe1">
<li class="active"><a href="#">adsadw er sdfw</a> </li>
<li><a href="#">QQQQQQQQQQQQQ</a></li>
<li><a href="#">some other random gibberish</a></li>
</ul>
</div>
</div>
<script src="js/bootstrap.min.js"></script>
</body>
</html>