NEC学习 ---- 模块 -文本圆角背景导航
下图是效果图:
然后, 左右两边的圆角图片和背景图片如下
(因为截图工具的原因, 可能图片不是很清晰. 这个图片有4个部分, 分别是中间的背景图, 左右圆角以及栏目分隔白线)
思路:
利用inline-block元素的中间性(既有块级元素特点: 能够控制宽高,可以定位, 也有内联元素特点: 可以被父元素text-align等)
HTML代码:
<div class="m-nav">
<ul>
<li class="first"><a href="#">栏目1</a></li>
<li><a href="#">栏目2</a></li>
<li><a href="#">栏目3</a></li>
<li><a href="#">栏目4</a></li>
</ul>
<span class="corner corner-l"></span><span class="corner corner-r"></span>
</div>
1, 首先定位一个总体高度, .m-nav, .m-nav li, .m-nav li a, .m-nav .corner 这几个元素是一样高的
2, 确定要使用图片的元素, .m-nav(中间背景图片), .m-nav .corner(左右圆角图), .m-nav li(栏目分割的白线图)
3, 将栏目中间化, inline-block控制(考虑兼容性)
4, 定位圆角
5, 控制文本
css 代码如下:
<style type="text/css">
.m-nav, .m-nav li, .m-nav li a, .m-nav .corner {
height:40px;line-height:40px;background: url(images/nav.png) no-repeat -9999px -9999px;
}
.m-nav {
background-position: 0 0;width:90%;
background-repeat: repeat-x;
text-align:center;
font-weight:bold;
margin:auto;
margin-top:45px;
position:relative;
font-size:;
color:#fff;
letter-spacing: -0.307em;
*letter-spacing: normal;
*word-spacing: -1px;
}
.m-nav li, .m-nav li a, .m-nav .corner {
display:inline-block;*display:inline;*zoom:;
}
.m-nav li {
background-position: 0 -150px;
}
.m-nav li.first{
background:none;
}
.m-nav .corner {
width:6px;
position: absolute;
top:;left:;
}
.m-nav .corner-l {
background-position: 0 -50px;
margin-left:-6px;
}
.m-nav .corner-r {
background-position: 0 -100px;
margin-left:100%;
}
.m-nav li a {
padding:0 20px;
font-size:14px;color:#fff;text-align:center;
letter-spacing: normal;
word-spacing:normal;
}
.m-nav li a:hover{
text-decoration: underline;
}
</style>
这里通过NEC学习CSS, 学习了文本控制和圆角背景导航(非浮动)的设计思路.
以上文章如有错误, 欢迎指正.
NEC学习 ---- 模块 -文本圆角背景导航的更多相关文章
- NEC学习 ---- 模块 - 上图下文图文列表
上图下文图文列表的效果如下图: 可以看到三个红色框中的三中"上图下文的图文列表"; 这里的代码其实没什么问题, 对于这种布局, 其实可以参考我上一篇介绍: NEC学习 ---- 模 ...
- NEC学习 ---- 模块 - 左图右文图文列表
该模块效果图: 这个模块也是在开发中经常使用的一种: HTML代码: <div class="container"> <div class="m-lis ...
- NEC学习 ---- 模块 -多行式面包屑导航
如上面形式面包屑的写法: HTML如下, <div class="m-crumb"> <ul class="f-cb"> <li& ...
- NEC学习 ---- 模块 - tab[含标题]
简要介绍, 默认居左, Tab不定宽, “标题”和“更多”可删, 扩展类可以自由组合, 依赖于reset.css(之前的模块以及布局都依赖这个css) 那么这个效果是怎么实现的呢? CSS代码: . ...
- NEC学习 ---- 模块 - 带点文字链接列表
带点文字链接列表, 实现的效果是, 调整字体大小, 点的位置不会跟着变动. HTML如下: <div class="container"> <div class= ...
- NEC学习 ---- 模块 -水平文字链接列表
HTML代码: <div class="container"> <div class="m-list1"> <ul class=& ...
- NEC学习 ---- 模块 -简易文字链接列表
为了方便查看, 在最外面设置了一个粉色框. html代码: <div class="container"> <ul class="m-list" ...
- 前端1-----CSS颜色属性,字体文本和背景属性,边框属性,margin和padding,盒模型,行内块转换,浮动,三大定位
前端1-----CSS颜色属性,字体文本和背景属性,边框属性,margin和padding,盒模型,行内块转换,浮动,三大定位 一丶css选择器的优先级 行内 > id选择器 > 类选择器 ...
- Windows phone 8 学习笔记(8) 定位地图导航
原文:Windows phone 8 学习笔记(8) 定位地图导航 Windows phone 8 已经不使用自家的bing地图,新地图控件可以指定制图模式.视图等.bing地图的定位误差比较大,在模 ...
随机推荐
- BFS(染色) LA 3977 Summits
题目传送门 题意:题意坑爹.问符合条件的的山顶个数 分析:降序排序后从每个点出发,假设为山顶,如果四周的点的高度>h - d那么可以走,如果走到已经走过的点且染色信息(山顶高度)不匹配那么就不是 ...
- figure元素
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- jQuery入门第一天
使用jQuery之前,我们需要加一些代码到HTML文件中. 首先在页面顶端增加一行script元素,然后写上结束符. 浏览器会运行script 里所有的Javascript,包括jQuery. 在你的 ...
- 【原】iOS学习之SQLite和CoreData数据库的比较
1. SQLite数据库 sqlite数据库操作的基本流程是, 创建数据库, 再通过定义一些字段来定义表格结构, 可以利用sql语句向表格中插入记录, 删除记录, 修改记录, 表格之间也可以建立联系. ...
- BZOJ4644 : 经典傻逼题
设每个点的权值为和它相连的所有边的权值的异或和,那么等价于选若干个点,使得点权异或和最大,这显然只需要维护一组线性基,然后从高位到低位贪心选取即可. 对于本题,因为有修改操作,所以考虑按时间分治,并用 ...
- [转]复制虚拟机后linux中的eth0变成eth1问题
为什么原来的eth0会变成eth1? 很多Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名.udev会在系统引导的过程中识别网卡,将mac地址和网卡 ...
- 目前quanben评十大哲学家
排名分先后,包含时间.地区和主要正面成就以及其他代表人物. 1. 伊曼努尔·康德:十八世纪:东普鲁士:理性的界限,现象和本体分立以及主体的地位2. 柏拉图:公元前三四百年:古希腊:理想(念)世界3. ...
- HDU - Pseudoforest
Description In graph theory, a pseudoforest is an undirected graph in which every connected componen ...
- 【HDU】4418 Time travel
http://acm.hdu.edu.cn/showproblem.php?pid=4418 题意:一个0-n-1的坐标轴,给出起点X.终点Y,和初始方向D(0表示从左向右.1表示从右向左,-1表示起 ...
- SQLSERVER的NULL
判断数据库中某个值是否为null(而不是'null',空字符串'',若干个空格' ') 一定不能用=null 或 !=null,而要用is null 或 is not null. 在sqlserver ...