顶部导航文本菜单不会垂直对齐

时间:2016-08-22 21:07:19

标签: html css twitter-bootstrap

我一直在愚弄这个将要进入标题div的小菜单。我不确定出了什么问题,但是在标题div中获取菜单中心的唯一方法是在跨度内使用跨度和编码。我真的不想使用跨度,因为有很多代码似乎是浪费。现在我的网页位于:

http://tahoe-luxury-properties.com/index2.html

由于这个论坛,我取得了很大的进步。菜单从页面顶部开始:

<p class="hot-menu">Search Tahoe Lakefronts<span>Search West Shore Tahoe    Lakefronts</span><span>Search Squaw Valley Luxury Homes</span></p>

我试图用div或p来控制它。:

.hot-menu {
    margin: 0px;
    vertical-align: middle !important;
    font-size: 15px !important;
    letter-spacing: 1.1px !important;
    font-family: Lato, Arial, Verdana !important;
    color: #FFFFFF !important;
    padding-right: 15px;
    }

我想也许它会在导航中心,因为p标签有某种形式的控制,所以我尝试了一个div,但仍然没有运气。

我只是希望它看起来像这样:

http://tahoe-luxury-properties.com/index3.html

有什么建议吗?非常感谢。 -Beth

3 个答案:

答案 0 :(得分:1)

我强烈建议您使用nav标记和无序列表结构,例如 @A。 Sharma 在评论中提出。这将允许更好的HTML语义,并且更易于维护和样式。

要实现您的目标,有多种方法,包括使用transformdisplay: table-cellflexbox

在下面的代码片段中,您将找到flexbox解决方案,因为我认为它是最简单/最佳/现代解决方案。

- 注意:问题没有说明小型设备会发生什么。您可以使用CSS媒体查询来处理此问题。

CODE SNIPPET

body {
  background-color: dodgerblue;
  /* Illustration purposes only.*/
}
.hot-menu {
  display: inline-block;
}
.hot-menu > ul {
  margin: 0;
  list-style: none;
  padding-right: 0 40px;
  display: flex;
}
.hot-menu > ul li {
  font-size: 15px;
  letter-spacing: 1.1px;
  font-family: Lato, Arial, Verdana;
  color: #FFFFFF;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid cyan;
  /* Illustration purposes only.*/
}
<nav class="hot-menu">
  <ul>
    <li>Search 1</li>
    <li>Search 2</li>
    <li>Search 3</li>
  </ul>
</nav>

测试:Chrome的最新版本。

evidence

答案 1 :(得分:0)

尝试将以下行添加到导航类:

float: right;
line-height: 60px;

这应该使它按照你想要的方式工作。

答案 2 :(得分:-2)

除非将元素指定为表格单元格,否则元素本质上将忽略vertical-align属性。您可以在元素上应用display: table-cell;,并将display: table;添加到其父级,如下所示:

.nav_container {
  display: table;
  width: 100%;
}

.nav_item {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

示例: https://jsfiddle.net/j0nv3v9e/1/