知乎导航栏实现
来源:互联网 发布:cdr软件手机版 编辑:程序博客网 时间:2024/05/21 19:41
今天看知乎,发现有人评论要称为前端工程师,必须要能够复写知乎导航栏。好嘛,有那么难么,我试试。
导航栏,下拉时仍存在,故使用了固定布局(position:fixed;)。左右有一定空闲,故可以用自适应布局来实现。整个过程不是很难,只是在实现文本垂直居中时走进了误区。
先开始指定导航栏到合适的height,此值比文本字号大,实现文本的垂直居中时出现了问题。考虑到IE下无法实现vertical-align所以放弃此方法,而设置line-height的值与height的值相等在百分比模式下无法实现文本的垂直居中,我特意看了下源代码,发现原代码中指定了px,此时令line-height和height的值都为45px。
遂百度之:高度是百分比的容器如何实现内部的单行文本垂直居中?
看到伪类元素了,不过突然发现这个bug就是由于指定导航栏的高度大于文本高度导致的,所以不指定导航栏高度,同时指定padding来实现文本上下留白。
至此导航完毕。遂加上固定布居,突然出现了个bug,右边有一段空余,然后加上right=0(目前还没想清楚为什么)。所有代码如下:
<!doctype html><head><meta charset="utf-8"><title>֪知乎,你的知识库</title><style>html{height:100%;//注意这里,不然后面的百分比永远不对。}body{height:100%;margin:0px;padding:0px;}nav{position:fixed;top:0px;left:0px;right:0px;padding:1% 20%;text-align:center;background-color:green;}.profile{float:right;width:11.11%;height:100%;position:relative;top:10%;}.logo{float:left;width:10%;height:100%;line-height:100%;position:relative;top:10%;}#content{height:100%;overflow:hidden;}.cols1{float:left;width:15%;height:100%;padding:0% 5%;position:relative;top:10%;text-align:center;}a{text-decoration:none;}</style></head><body><nav><div class="profile">Tonyhzw</div><div class="profile">提问</div><div class="logo">知乎</div><input type="search" class="logo" style="top:0px;"><div id="content"> <div class="cols1"><a href="#">首页</a></div> <div class="cols1"><a href="#">话题</a></div> <div class="cols1"><a href="#">发现</a></div> <div class="cols1"><a href="#">消息</a></div></div></nav></body><html>
0 0
- 知乎导航栏实现
- iOS---实现简书和知乎的上滑隐藏导航栏下拉显示导航栏效果
- Android 使用Toolbar+DrawerLayout快速实现仿“知乎APP”侧滑导航效果
- iOS开发 导航栏渐变 图片下拉放大 导航栏移动 仿QQ 微博 知乎导航栏
- 前端之路——第五篇:1:1还原知乎首页顶层导航栏!
- Android手机UI设计---”知乎“界面外观模仿篇(一)---使用Fragment实现底部导航以及嵌套
- Android仿今日头条和知乎等App顶部滑动导航实现代码分析及源码下载
- Labview实现简单知乎日报客户端
- 知乎
- 知乎
- 都说“知乎”逼格高,我们来实现“知乎”回答详情页动画效果
- 导航栏的实现
- 底部导航栏实现
- JS实现导航栏
- TabLayout实现导航栏
- BottomNavigationView实现导航栏
- jQuery实现导航栏
- 导航栏实现
- 什么是缓存
- 调用+scheduledTimerWithTimeInterval...的方式触发的timer,在滑动页面上的列表时,timer会暂停回调,为什么?如何解决?
- CSDN 插入图片(无法显示的问题)
- 柴俊理金:美指疯涨黄金回落,原油震荡冲高在即
- 新数字三角形问题
- 知乎导航栏实现
- 想要住的顺心,这些地方得长远考虑
- 计算机视觉--常用数据库网址
- html5-在网页中来回拖放图片
- 控制反转和依赖注入
- zju1610 count the colors 线段树
- iOS 应用进入后台后,如何短暂的执行一个任务
- java中的sleep()和wait()的区别
- ContentProvider入门