BootStrap导航栏问题记录


Posted in Javascript onJuly 31, 2017

今天完成的事情:(实现了test9的响应式导航栏的垂直平分和下拉列表的居中问题。)

我觉得最麻烦的就是要在bootstrap的格式下修改。我弄了好多次demo来虐导航栏。但是一直都没有头绪。知道昨晚在完玩狼人杀后,突然灵机一闪。

能不能通过内部的固定高度,来实现垂直平分的效果呢。

在查看psd图的效果是导航栏的a是垂直平分的。

BootStrap导航栏问题记录

那么我可否通过固定a超链接的高度来实现垂直平分呢?

<div "h-nav">
  <nav "container navbar navbar-default" role="navigation">
    <div "row">
      <div "navbar-header df-jcsbc">
        <a "navbar-brand" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >
          <img src="img/test8-1/logo6.png" "">
        </a>
        <button type="button" " navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
          <span "sr-only">切换导航</span>
          <span "icon-bar"></span>
          <span "icon-bar"></span>
          <span "icon-bar"></span>
        </button>
      </div>
      <div "collapse navbar-collapse" id="navbar-collapse">
        <ul id="h-cell-1" "nav navbar-nav lsno navbar-right">
          <li ""><a href="test9-1.html" rel="external nofollow" >首页</a></li>
          <li ""><a href="test9-3.html" rel="external nofollow" ><span "dib">职业</span></a></li>
          <li ""><a href="test9-2.html" rel="external nofollow" rel="external nofollow" ><span "dib pat">推荐</span></a></li>
          <li ""><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><span "dib pat">关于</span></a></li>
        </ul>
      </div>
    </div>
  </nav>
</div>

带着这种想法,我设定了如下属性。

#h-cell-1 a{
  display:inline-block;
  height:97px;
  margin-left:32px;
  font-size:17.8px;
  text-decoration: none;color:white;
}

BootStrap导航栏问题记录

为此怎么实现垂直居中呢?

第一点想到的是position定位了

既然要实现相对于a超链接的position,那么必须引入一个span盒子了。

<li ""><a href="test9-2.html" rel="external nofollow" rel="external nofollow" ><span "dib pat">推荐</span></a></li>

然后增加

#h-cell-1 li{height:97px;}
#h-cell-1 a{
  display:inline-block;
  position:relative;
  width:40px;
  height:97px;
  margin-left:32px;
  border-bottom:2px solid #20B176;
  font-size:17.8px;
  text-decoration: none;color:white;
}
#h-cell-1 a span{width:40px;}

就可实现垂直居中了!

但另外一个问题又接着出现了,在galaxy5的小屏幕下,下拉菜单的li间距太大,不美观。

BootStrap导航栏问题记录

又该怎么办呢?

这个是在28号晚上想到方法的。灵感也是看了其他同学的日报。他们提到媒体查询。

好,什么是媒体查询。建议百度。这里不做介绍。

媒体查询是吧,好那么久好办了。

@media only screen and (max-width: 700px) {
#h-cell-1 li{height:auto;}
#h-cell-1 a{height:20px;width:100%;margin:0;padding:0;overflow:hidden;}
#h-cell-1 a span{height:auto;}
}

ok,完美。

但是还有问题啊!

BootStrap导航栏问题记录

图标,和按钮原本是不垂直居中的啊!那这个怎么搞!

<div "navbar-header df-jcsbc">
  <a "navbar-brand" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >
    <img src="img/test8-1/logo6.png" "">
  </a>
  <button type="button" " navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
    <span "sr-only">切换导航</span>
    <span "icon-bar"></span>
    <span "icon-bar"></span>
    <span "icon-bar"></span>
  </button>
</div>

他们不是都在navbar-header的盒子里吗?

那不能通过flex两端对齐来实现垂直吗?

试试看

加了个

.df-jcsbc{display:flex;justify-content: space-between;align-items: center;}

但是效果不理想啊!总体来说,.navbar-brand 和navbra-toggle实现了垂直居中。

BootStrap导航栏问题记录

那,怎么办呢?

我是直接弄

.navbar-header{position: relative;height:97px;}
.navbar-brand{
padding:0;

  }
.navbar-header img{position:absolute;
  left:20px;}
.navbar-header button{position:absolute;
  margin:0;
  right:20px;}

padding和margin来使他们让出位置来的。

然后通过定位稍微调了点左右距离。

最后就可以实现垂直居中了。

明天及今天计划的事情:(是按照大娃师兄,提出的UI自检 :首先对照字体大小,颜色,边距,定位等问题,之后在不同的分辨率下查看是否有布局错乱,不协调等问题。来做test10。)

总结

以上所述是小编给大家介绍的BootStrap导航栏问题记录,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
判断脚本加载是否完成的方法
May 26 Javascript
ASP小贴士/ASP Tips javascript tips可以当桌面
Dec 10 Javascript
BootStrap日期控件在模态框中选择时间下拉菜单无效的原因及解决办法(火狐下不能点击)
Aug 18 Javascript
JS动态添加选项案例分析
Oct 17 Javascript
Angular.js中定时器循环的3种方法总结
Apr 27 Javascript
jquery写出PC端轮播图实例
Jan 26 jQuery
vue 简单自动补全的输入框的示例
Mar 12 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
Sep 21 Javascript
配置eslint规范项目代码风格
Mar 11 Javascript
vue过滤器用法实例分析
Mar 15 Javascript
swiper4实现移动端导航切换
Oct 16 Javascript
jQuery操作动画完整实例分析
Jan 10 jQuery
Angular4 中内置指令的基本用法
Jul 31 #Javascript
详谈ES6中的迭代器(Iterator)和生成器(Generator)
Jul 31 #Javascript
浅谈对Angular中的生命周期钩子的理解
Jul 31 #Javascript
Bootstrap Table 在指定列中添加下拉框控件并获取所选值
Jul 31 #Javascript
vue组件 $children,$refs,$parent的使用详解
Jul 31 #Javascript
Kindeditor单独调用单图上传增加预览功能的实例
Jul 31 #Javascript
Kindeditor单独调用多图上传实例
Jul 31 #Javascript
You might like
php中的数组操作函数整理
2008/08/18 PHP
PHP5+UTF8多文件上传类
2008/10/17 PHP
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
用PHP实现的四则运算表达式计算实现代码
2011/08/02 PHP
利用curl抓取远程页面内容的示例代码
2013/07/23 PHP
laravel框架中间件 except 和 only 的用法示例
2019/07/12 PHP
JavaScript面象对象设计
2008/04/28 Javascript
document.getElementById方法在Firefox与IE中的区别
2010/05/18 Javascript
一个js拖拽的效果类和dom-drag.js浅析
2010/07/17 Javascript
批量实现面向对象的实例代码
2013/07/01 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
浅谈javascript的分号的使用
2015/05/12 Javascript
AngularJS 过滤器(自带和自建)详解
2016/09/19 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
Node.js Express 框架 POST方法详解
2017/01/23 Javascript
jQuery表格(Table)基本操作实例分析
2017/03/10 Javascript
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
简单谈谈原生js的math对象
2017/06/27 Javascript
vue watch普通监听和深度监听实例详解(数组和对象)
2018/08/16 Javascript
vue实现的请求服务器端API接口示例
2019/05/25 Javascript
Vue Components 数字键盘的实现
2019/09/18 Javascript
vuex+axios+element-ui实现页面请求loading操作示例
2020/02/02 Javascript
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
2020/01/10 Python
5 分钟读懂Python 中的 Hook 钩子函数
2020/12/09 Python
意大利领先的线上奢侈品销售电商:Eleonora Bonucci
2017/10/17 全球购物
100%植物性、有机、即食餐:Sakara Life
2018/10/25 全球购物
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
纽约市的奢华内衣目的地:Anya Lust
2019/08/02 全球购物
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
大学生实习期自我评价范文
2013/10/03 职场文书
口腔医学技术应届生求职信
2013/11/09 职场文书
通信工程毕业生求职信
2013/11/16 职场文书
部门群众路线教育实践活动对照检查材料思想汇报
2014/10/07 职场文书
python执行js代码的方法
2021/05/13 Python
C3 线性化算法与 MRO之Python中的多继承
2021/10/05 Python
零基础学java之带参数以及返回值的方法
2022/04/10 Java/Android