2015-11-08 29 views
5

Tôi đã cố gắng căn chỉnh theo chiều dọc trên menu điều hướng của mình. Tôi đã thử display:table-cell; vertical-align: middle;, nhưng nó sẽ không. Tôi không muốn áp dụng padding-top or margin top. Tôi làm cách nào để quản lý việc này?Điều hướng sẽ không căn chỉnh theo chiều dọc

fiddle My https://jsfiddle.net/Tokyo/27kquzm3/

+0

remove float: left; trong bộ chọn #cssmenu> ul> li –

+0

xoá 'lề: 0; 'vào' #cssmenu ul' –

+0

Thử sử dụng chiều cao dòng –

Trả lời

3

Bạn phải từ bỏ display:table đến ul và loại bỏ float:left; và sau đó cung cấp cho display:table-cell;vertical-align:middle; tới phần tử li.

#cssmenu > ul > li { 
    display: table-cell; 
vertical-align: middle; 
} 

#cssmenu ul 
{ 
    display: table; 
    height: 100%; 
} 

Jsfiddle

+0

@Kami Đó là tất cả những gì bạn muốn? Tôi cũng đã cố định đường viền trên cùng. Kiểm tra [this] (https://jsfiddle.net/alireza_safian/27kquzm3/3/) – Alex

+1

Cảm ơn bạn rất nhiều! Điều này làm việc hoàn hảo. Nhưng vì lý do nào đó, khi tôi thêm mã khi bạn cung cấp màu của tôi trên thanh điều hướng sẽ tự động bị xóa khi tôi thay đổi kích thước màn hình và nó cũng cho phép tôi cuộn theo chiều dọc. Chỉ cần một chút thời gian, tôi sẽ cung cấp cho bạn jsfiddle. – Kami

+0

Chỉ navmenu nhà có màu đen. Phần còn lại màu sắc đã biến mất vì một lý do nào đó. Tôi xin lỗi. Tôi đã thêm mã truy vấn phương tiện tại đó để hiển thị phiên bản thanh điều hướng di động của tôi. Điều gì xảy ra. ở đây là fiddle https://jsfiddle.net/alireza_safian/27kquzm3/1/ – Kami

3
#cssmenu{ 
width:100%; 
padding-top:13px; 
} 

Hãy thử nó ra.

+0

Vui lòng đọc lại câu hỏi. – Alex

+0

Tôi xin lỗi, nhưng tôi muốn tránh thêm phần đệm đầu hoặc lề trên. – Kami

+0

công việc của nó, tốt. –

2

#cssmenu, 
 
#cssmenu ul, 
 
#cssmenu ul li, 
 
#cssmenu ul li a, 
 
#cssmenu #menu-button { 
 
    margin: 0; 
 
    padding: 0; 
 
    border: 0; 
 
    list-style: none; 
 
    line-height: 1; 
 
    display: block; 
 
    position: relative; 
 
    -webkit-box-sizing: border-box; 
 
    -moz-box-sizing: border-box; 
 
    box-sizing: border-box; 
 
} 
 
#cssmenu:after, 
 
#cssmenu > ul:after { 
 
    content: "."; 
 
    display: block; 
 
    clear: both; 
 
    visibility: hidden; 
 
    line-height: 0; 
 
    height: 0; 
 
} 
 
#cssmenu #menu-button { 
 
    display: none; 
 
} 
 
#cssmenu { 
 
position: fixed; 
 
    z-index: 5; 
 
    width: 100%; 
 
    max-width: 3200px; 
 
    top:0%; 
 
    text-align: center; 
 
    height: 90px; 
 
    box-shadow: 0 0 25px rgba(0,0,0,0.9); 
 
    background-color: rgba(14, 0, 0, 0.8); 
 
} 
 

 

 
#cssmenu > ul > li { 
 
    display: table-cell; 
 
    vertical-align: middle; 
 
} 
 

 
#cssmenu ul{ 
 
width:90%; 
 

 
    margin-left: auto; 
 
    margin-right: auto; 
 
    display: table; 
 
height: 100%; 
 
} 
 

 
#cssmenu li{ 
 

 

 
} 
 

 
#cssmenu.align-center > ul { 
 
    font-size: 0; 
 
    text-align: center; 
 
    width:500px; 
 
    border: 1px solid #fff; 
 
} 
 
#cssmenu.align-center > ul > li { 
 
    display: inline-block; 
 
    float: none; 
 

 
} 
 
#cssmenu.align-center ul ul { 
 
    text-align: left; 
 
} 
 
#cssmenu.align-right > ul > li { 
 
    float: right; 
 

 
} 
 
#cssmenu > ul > li > a { 
 
    padding: 17px; 
 
    font-size: 1.2em; 
 
    letter-spacing: 1px; 
 
    text-decoration: none; 
 
    color: #dddddd; 
 
    font-weight: 700; 
 
    display:table-cell; 
 
height: 90px; 
 
vertical-align: middle; 
 

 
} 
 
#cssmenu > ul > li:hover > a { 
 
    border-top: 4px solid #cd4650; 
 
    color: #cd4650; 
 

 
} 
 
#cssmenu > ul > li.has-sub > a { 
 
    padding-right: 30px; 
 
} 
 
#cssmenu > ul > li.has-sub > a:after { 
 
    position: absolute; 
 
    top: 22px; 
 
    right: 11px; 
 
    width: 8px; 
 
    height: 2px; 
 
    display: block; 
 
    background: #dddddd; 
 
    content: ''; 
 
} 
 
#cssmenu > ul > li.has-sub > a:before { 
 
    position: absolute; 
 
    top: 19px; 
 
    right: 14px; 
 
    display: block; 
 
    width: 2px; 
 
    height: 8px; 
 
    background: #dddddd; 
 
    content: ''; 
 
    -webkit-transition: all .25s ease; 
 
    -moz-transition: all .25s ease; 
 
    -ms-transition: all .25s ease; 
 
    -o-transition: all .25s ease; 
 
    transition: all .25s ease; 
 
} 
 
#cssmenu > ul > li.has-sub:hover > a:before { 
 
    top: 23px; 
 
    height: 0; 
 
} 
 
#cssmenu ul ul { 
 
    position: absolute; 
 
    left: -9999px; 
 
} 
 
#cssmenu.align-right ul ul { 
 
    text-align: right; 
 
} 
 
#cssmenu ul ul li { 
 
    height: 0; 
 
    -webkit-transition: all .25s ease; 
 
    -moz-transition: all .25s ease; 
 
    -ms-transition: all .25s ease; 
 
    -o-transition: all .25s ease; 
 
    transition: all .25s ease; 
 

 
} 
 
#cssmenu li:hover > ul { 
 
    left: auto; 
 
} 
 
#cssmenu.align-right li:hover > ul { 
 
    left: auto; 
 
    right: 0; 
 
} 
 
#cssmenu li:hover > ul > li { 
 
    height: 35px; 
 
} 
 
#cssmenu ul ul ul { 
 
    margin-left: 100%; 
 
    top: 0; 
 
} 
 
#cssmenu.align-right ul ul ul { 
 
    margin-left: 0; 
 
    margin-right: 100%; 
 
} 
 

 
/*submenu*/ 
 
#cssmenu ul ul li a { 
 
    border-bottom: 1px solid rgba(150, 150, 150, 0.15); 
 
    margin-top: 15px; 
 
    padding: 11px 15px; 
 
    width: 350px; 
 
    font-size: 1em; 
 
    text-decoration: none; 
 
    color: #dddddd; 
 
    font-weight: 700; 
 
    background: rgba(29, 15, 6, 0.7); 
 
} 
 

 
#cssmenu ul ul li { 
 
    border-bottom: 1px solid rgba(150, 150, 150, 0.15); 
 
    margin-top: 15px; 
 
    
 
    
 
} 
 
#cssmenu ul ul li:last-child > a, 
 
#cssmenu ul ul li.last-item > a { 
 
    border-bottom: 0; 
 
} 
 

 
/*submenu*/ 
 
#cssmenu ul ul li:hover > a, 
 
#cssmenu ul ul li a:hover { 
 

 
    color: #cd4650; 
 
} 
 
#cssmenu ul ul li.has-sub > a:after { 
 
    position: absolute; 
 
    top: 16px; 
 
    right: 11px; 
 
    width: 8px; 
 
    height: 2px; 
 
    display: block; 
 
    background: #dddddd; 
 
    content: ''; 
 
} 
 
#cssmenu.align-right ul ul li.has-sub > a:after { 
 
    right: auto; 
 
    left: 11px; 
 
} 
 
#cssmenu ul ul li.has-sub > a:before { 
 
    position: absolute; 
 
    top: 13px; 
 
    right: 14px; 
 
    display: block; 
 
    width: 2px; 
 
    height: 8px; 
 
    background: #dddddd; 
 
    content: ''; 
 
    -webkit-transition: all .25s ease; 
 
    -moz-transition: all .25s ease; 
 
    -ms-transition: all .25s ease; 
 
    -o-transition: all .25s ease; 
 
    transition: all .25s ease; 
 
} 
 
#cssmenu.align-right ul ul li.has-sub > a:before { 
 
    right: auto; 
 
    left: 14px; 
 
} 
 
#cssmenu ul ul > li.has-sub:hover > a:before { 
 
    top: 17px; 
 
    height: 0; 
 
}
<div id='cssmenu'> 
 
<ul> 
 
    <li><a class="first" href="#f">Home</a></li> 
 
<li><a class="introduction" href="#introduction">Intro</a></li> 
 
<li><a class="background" href="#background">Background <br>Placement </a></li> 
 
<li><a class="ira" href="#ira">illatruation & ira</a></li> 
 
<li><a class="corporate" href="#cusrporate">Corporate<br>View</a></li> 
 

 

 
      
 

 
</ul> 
 
</div>

+1

Cảm ơn bạn, điều này cũng đã làm việc! – Kami

Các vấn đề liên quan