如何使用CSS创建响应式顶栏

时间:2016-04-20 06:36:28

标签: html css

我想创建一个包含两个部分的顶部栏。第一个是230px部分(即黑色部分)。第二部分是灰烬。我希望第二部分成为另一个div。

enter image description here

当我在大屏幕上打开它时,我的问题就出现了。发生以下情况:

enter image description here

以下是HTML代码:

<div id="topNav">
<div class="websiteName">
    <h1><i class="fa fa-paper-plane"></i> Admin Panel</h1>
</div>
<div class="topbar">
    <a class="mainMenuTrigger" data-type="on"><i class="fa fa-long-arrow-left"></i></a>
    <a class="settingsTrigger"><i class="fa fa-cog fa-spin fa-fw"></i></a>
</div>

这是CSS:

#topNav{
  width: 100%;
  display: inline-block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}
.websiteName{
    width: 230px;
    display: block;
    float: left;
    background: #242A34;
    padding: 15px 0;
}
.websiteName h1{
  color: #fff;
  font-size: 18px;
  margin: 0;
  padding: 0;
  text-align: center;
  font-family: $font-family-base;
}
.topbar{
   background: #fff;
   display: block;
   height: 50px;
   position: relative;
   width: 1135px;
   float: left;
}

2 个答案:

答案 0 :(得分:1)

<强>更新

  • <activity android:name=".yourActivity" android:label="@string/yourText" /> :这允许响应式顶栏。
  • 取消width: calc(100% - 230px);而不是float,使用inline-block

请参阅下文,了解一些有点骨干的例子:

position: absolute
*, :before, :after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

#topNav {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}

.websiteName {
  vertical-align: top;
  width: 230px;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
  background: #242A34;
  padding: 15px 0;
}

.websiteName h1 {
  color: #fff;
  font-size: 18px;
  margin: 0;
  padding: 0;
  text-align: center;
}

.topbar {
  background: #ccc;
  position: absolute;
  top: 0;
  left: 230px;
  height: 50px;
  width: calc(100% - 230px);
}

答案 1 :(得分:0)

替换下面的css将解决问题 在这里你需要根据宽度div划分div,所以你需要使用 width:calc(100% - 230px);

.topbar{
   background: #000;
   display: block;
   height: 50px;
   position: relative;
   width: calc(100% - 230px);
   float: left;
}