html - 当我应用 float 属性时内容向下移动

标签 html css css-float

我必须将 time 类向右浮动,但是当我尝试向右浮动时,它的内容会向下移动。没有 float 内容看起来不错,但我必须 float 它。

https://jsfiddle.net/jyckLwv7/

.main-nav {
  color: #FFF;
  width: 100%;
  background-color: #5e2d91;
  float: right;
  line-height: 42px;
  margin-top: -3px;
}
.main-nav ul li {
  display: inline;
  padding: 0px 10px;
}
.main-nav ul li a {
  color: #FFF;
  text-decoration: none;
  padding: 20px 14px;
}
.main-nav ul {
  margin-bottom: 7px !important;
}
.main-nav ul li a:hover {
  background-color: #0098aa;
}
.main-nav ul li a:active {
  background-color: #6A006A;
}
.time {
  float: righ;
  background: #5e2d91;
  color: #FFFFFF;
  border-color: #718b88;
  font-family: sans-serif;
  font-weight: bold;
  border-style: solid;
  margin-left: 10%;
  width: 228px;
  height: 33px;
  margin-top: 9px;
  float: right;
}
<nav class="main-nav">
  <ul>
    <li><a href="http://marketinthepocket.com/"> Home </a>
    </li>
    <li><a href="transaction.php"> Trade Now</a>
    </li>

    <li><a href="view.php"> Transactions  </a>
    </li>
    <li><a href=""> Performance </a>
    </li>



    <li><a href="complete.php">History </a>
    </li>
    <li class="time">US Markets Open in&nbsp;<span id="hm_timer" class="style colorDefinition size_sm">08:20:04</span> 
    </li>
  </ul>
</nav>

最佳答案

首先,不要使用 margin-top: -3px 来对抗默认的 padding 浏览器设置为 body,因为此填充因浏览器而异。为了获得更一致的视觉输出,您可以尝试使用类似以下内容规范化此属性:

html, body {
    margin: 0;
    padding: 0;
}

现在,针对您的对齐问题,尝试从 .timevertical-align: middle 到您的 li 元素。

jsFiddle:here

代码: (展开代码段)

html, body {
  margin: 0;
  padding: 0;
}
.main-nav, .main-nav ul li {
  display: inline-block;
}
.main-nav {
  color: #FFF;
  width: 100%;
  background-color: #5e2d91;
  line-height: 24px;
}
.main-nav ul li {
  padding: 0px 10px;
  vertical-align: middle;
}
.main-nav ul li a {
  color: #FFF;
  text-decoration: none;
  padding: 20px 14px;
}
.main-nav ul li a:hover {
  background-color: #0098aa;
}
.main-nav ul li a:active {
  background-color: #6A006A;
}
.time {
  float: right;
  border-color: #718b88;
  font-family: sans-serif;
  font-weight: bold;
  border-style: solid;
  margin-left: 10%;
}
<nav class="main-nav">
  <ul>
    <li><a href="http://marketinthepocket.com/">Home</a></li>
    <li><a href="transaction.php">Trade Now</a></li>
    <li><a href="view.php">Transactions</a></li>
    <li><a href="">Performance</a></li>
    <li><a href="complete.php">History</a></li>
    <li class="time">US Markets Open in&nbsp;
      <span id="hm_timer"class="style colorDefinition size_sm">08:20:04</span> 
    </li>
  </ul>
</nav>

关于html - 当我应用 float 属性时内容向下移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39844984/

相关文章:

html - 即图像链接中的边框(未由样式边框 :none) 修复

html - 左浮动 div 的底部边框大小不一样

html - 在 HTML 结构中比段落中的文本更靠右的图像 float

html - JSF 2.0 页面中的 SVG 图形对象入门

html - 是否可以为 HTML5 API 创建自定义用户权限请求对话框?

html - Jenkins 无法使用 htmlpublisher 生成 HTML 报告

javascript - 绑定(bind)数据列表后,将 css 样式重新应用于 View 的一部分

html - 选项卡式 View /多个谷歌图表返回错误 "e null"

javascript - 在文档加载时触发 materialize.css toast

css - 为什么可以清除 float 元素却不能清除绝对定位元素?