[英]How to center align an ICON inside a BUTTON in materialize css navbar?
我在 SO 上閱讀了許多關於如何在 BUTTON 內居中對齊 ICON 的帖子,但它們都不適用於我的情況,因為在我的情況下,BUTTON 位於導航欄內。
請參閱jsfiddle中的代碼,也粘貼在下面的代碼塊中。
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<div class="navbar-fixed">
<nav class="teal">
<div class="container">
<div class="nav-wrapper">
<a href="#" class="brand-logo">LOGO </a>
<ul class="right hide-on-med-and-down">
<li>
<form class="orange" style="">
<div style="display: inline-flex; border: 1px black solid; align-items: center;">
<input id="search-bar" type="search" placeholder="text text..." style="border: 1px red solid; margin: 0; height: 100%;">
<button class="btn" type="submit" style="background: blue; height:45px;">
<i class="material-icons" style="border: 1px red solid; display: inline; margin: auto;">search</i>
</button>
</div>
</form>
</li>
<li>
<a href="#home">Home</a>
</li>
</ul>
</div>
</div>
</nav>
</div>
問題是,搜索 ICON 不在 BUTTON 內垂直居中,我嘗試了許多建議的方法,但都沒有奏效。
請幫忙!
如果您的導航欄具有固定高度,則此 css 對您來說足夠https://jsfiddle.net/fw9cmaq6/
.material-icons{
margin-top:-8px;
}
如果不是固定高度,只需使用它
.material-icons{
display: table-cell !important;
vertical-align: middle;
line-height:0 !important;
height:100% !important;
}
您只需將line-height: 45px
添加到您的icon
,因為您添加了height:45px;
到你的按鈕,就像這樣:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<div class="navbar-fixed">
<nav class="teal">
<div class="container">
<div class="nav-wrapper">
<a href="#" class="brand-logo">LOGO </a>
<ul class="right hide-on-med-and-down">
<li>
<form class="orange" style="">
<div style="display: inline-flex; border: 1px black solid; align-items: center;">
<input id="search-bar" type="search" placeholder="text text..." style="border: 1px red solid; margin: 0; height: 100%;">
<button class="btn" type="submit" style="background: blue; height:45px;">
<i class="material-icons" style="border: 1px red solid; display: inline; margin: auto;line-height:45px;">search</i>
</button>
</div>
</form>
</li>
<li>
<a href="#home">Home</a>
</li>
</ul>
</div>
</div>
</nav>
</div>
您可以通過調整代碼中搜索 div 的邊距來修復它。 希望這可以幫助。 我已經在你的代碼中修復了它。
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <div class="navbar-fixed"> <nav class="teal"> <div class="container"> <div class="nav-wrapper"> <a href="#" class="brand-logo">LOGO </a> <ul class="right hide-on-med-and-down"> <li> <form class="orange" style=""> <div style="display: inline-flex; border: 1px black solid; align-items: center;"> <input id="search-bar" type="search" placeholder="text text..." style="border: 1px red solid; margin: 0; height: 100%;"> <button class="btn" type="submit" style="background: blue; height:45px;"> <div style="margin-top: -9px;"> <i class="material-icons" style="border: 1px red solid; display: inline; ">search</i> </div> </button> </div> </form> </li> <li> <a href="#home">Home</a> </li> </ul> </div> </div> </nav> </div>
你可以檢查這個(全屏查看)
#container { height: 65px; display: flex; } #search-bar { height: 100%; } button.btn { height: auto;important. }:material-icons { vertical-align; middle: justify-content; center: align-items; center; }
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <div class="navbar-fixed"> <nav class="teal"> <div class="container"> <div class="nav-wrapper"> <a href="#" class="brand-logo">LOGO </a> <ul class="right hide-on-med-and-down"> <li> <form class="orange"> <div id="container"> <input id="search-bar" type="search" placeholder="text text..."> <button class="btn" type="submit" style="background: blue; height:45px;"> <i class="material-icons">search</i> </button> </div> </form> </li> <li> <a href="#home">Home</a> </li> </ul> </div> </div> </nav> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.