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 相关文章推荐
Jquery submit()无法提交问题
Apr 21 Javascript
生成二维码方法汇总
Dec 26 Javascript
JavaScript中split() 使用方法汇总
Apr 17 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 Javascript
jQuery Easyui 下拉树组件combotree
Dec 16 Javascript
基于JavaScript实现下拉列表左右移动代码
Feb 07 Javascript
JavaScript中Hoisting详解 (变量提升与函数声明提升)
Aug 18 Javascript
vue项目使用.env文件配置全局环境变量的方法
Oct 24 Javascript
浅析vue-router中params和query的区别
Dec 24 Javascript
vue点击按钮动态创建与删除组件功能
Dec 29 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
Apr 07 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
Sep 17 Javascript
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
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
2007/09/02 PHP
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
php无限级分类实现方法分析
2016/10/19 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
Extjs学习笔记之六 面版
2010/01/08 Javascript
基于JQuery实现相同内容合并单元格的代码
2011/01/12 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
2013/12/01 Javascript
javascript中的作用域和上下文使用简要概述
2013/12/05 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
jQuery移动web开发之页面跳转和加载外部页面的实现
2015/12/04 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
JavaScript组件开发之输入框加候选框
2017/03/10 Javascript
详解angular element()方法使用
2017/04/08 Javascript
Nodejs实现文件上传的示例代码
2017/09/26 NodeJs
Angular整合zTree的示例代码
2018/01/24 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
Nuxt配合Node在实际生产中的应用详解
2018/08/07 Javascript
JavaScript学习笔记之DOM基础操作实例小结
2019/01/09 Javascript
vue监听dom大小改变案例
2020/07/29 Javascript
Python logging模块学习笔记
2014/05/24 Python
Python实现的二维码生成小软件
2014/07/11 Python
动感网页相册 python编写简单文件夹内图片浏览工具
2016/08/17 Python
python django事务transaction源码分析详解
2017/03/17 Python
详解Python字典的操作
2019/03/04 Python
关于keras.layers.Conv1D的kernel_size参数使用介绍
2020/05/22 Python
Python爬虫教程知识点总结
2020/10/19 Python
美国时尚女装在线:Missguided
2016/12/03 全球购物
请写出一段Python代码实现删除一个list里面的重复元素
2015/12/29 面试题
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
基于Python 函数和方法的区别说明
2021/03/24 Python
销售求职信范文
2014/05/26 职场文书
课程设计的心得体会
2014/09/03 职场文书
授权委托书样本及填写说明
2014/09/19 职场文书
html2 canvas svg不能识别的解决方案
2021/06/03 HTML / CSS
2022年显卡天梯图(6月更新)
2022/06/17 数码科技
python数字图像处理之图像自动阈值分割示例
2022/06/28 Python