before伪类的超有用应用技巧——水平菜单竖线分隔符
方法一、li前面加before伪类
<!doctype html>
<html dir="ltr" lang="zh-CN">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<title>菜单</title>
<style type="text/css" title="default" media="screen">
ul { padding:0; margin:0; font:0.9em Verdana; }
li { display:inline; color:green; }
li~li:before { content:"|"; padding-right:5px; color:red; }
li a{ display:block;text-decoration:none;background:#CC99CC;}
li a{ display:inline;}
</style>
</head>
<body>
<ul>
<li>menu1</li>
<li><a href="http://www.cnblogs.com/rubylouvre/">menu2</a></li>
<li>menu3</li>
<li>menu4</li>
</ul>
</body>
</html>
二、或利用相邻选择符加after伪类
<!doctype html>
<html dir="ltr" lang="zh-CN">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<title>菜单</title>
<style type="text/css" title="default" media="screen">
ul { padding:0; margin:0; font:0.9em Verdana; }
li { display:inline; color:green; }
li+li:before { content:"|"; padding-right:5px; color:red; }
li a{ display:block;text-decoration:none;background:#CC99CC;}
li a{ display:inline;}
</style>
</head>
<body>
<ul>
<li>menu1</li>
<li><a href="http://www.cnblogs.com/rubylouvre/">menu2</a></li>
<li>menu3</li>
<li>menu4</li>
</ul>
</body>
</html>
三、或利用相邻选择符加after伪类。
由于IE6不支持,我们可以利用负margin技术变通一下,但还是要多添加一个类……
<!doctype html>
<html dir="ltr" lang="zh-CN">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<title>菜单</title>
<style type="text/css" title="default" media="screen">
ul { padding:0; margin:0; font:0.9em Verdana; }
li { display:inline; color:green; padding:0 5px;border-right:1px solid red;margin-left:-1px;}
li a{ display:block;text-decoration:none;background:#CC99CC;}
li a{ display:inline;}
li.last {border-width:0;}
</style>
</head>
<body>
<ul>
<li>menu1</li>
<li><a href="http://www.cnblogs.com/rubylouvre/">menu2</a></li>
<li>menu3</li>
<li class="last">menu4</li>
</ul>
</body>
</html>
转载自:http://www.cnblogs.com/rubylouvre/archive/2009/07/28/1532757.html
before伪类的超有用应用技巧——水平菜单竖线分隔符的更多相关文章
- iOS 开发的9个超有用小技巧
http://www.jianshu.com/p/221507eb8590 1.如何快速的查看一段代码的执行时间. 1 2 #define TICK NSDate *startTime = [NS ...
- js进阶 10-10 可见伪类选择器和内容伪类选择器的作用
js进阶 10-10 可见伪类选择器和内容伪类选择器的作用 一.总结 一句话总结:分组来描述.内容伪类选择器就是 四个 包含.可见的伪类选择器就是可见和不可见.查找功能,也就是内容伪类选择器非常 ...
- :after伪类+content内容生成经典应用举例
一.简单说说content内容生成 content内容生成就是通过content属性生成内容,content属性早在CSS2.1的时候就被引入了,可以使用:before以及:after伪元素生成内容. ...
- :after伪类+content内容生成经典应用举例——张鑫旭
一.简单说说content内容生成 content内容生成就是通过content属性生成内容,content属性早在CSS2.1的时候就被引入了,可以使用:before以及:after伪元素生成内容. ...
- Android程序员学WEB前端(7)-CSS(2)-伪类字体文本背景边框-Sublime
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76618373 觉得博文有用,请点赞,请评论,请关注,谢谢!~ 伪类: <!DOC ...
- CSS的伪类 :before 和 :after
CSS 有两个说不上常用的伪类 :before 和 :after,偶尔会被人用来添加些自定义格式什么的,但是它们的功用不仅于此.前几天发现了 Creative Link Effects 这个非常有意思 ...
- 谈谈一些有趣的CSS题目(十)-- 结构性伪类选择器
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- 解密jQuery内核 Sizzle引擎筛选器 - 位置伪类(一)
本章开始分析过滤器,根据API的顺序来 主要涉及的知识点 jQuery的组成 pushStack方法的作用 sizzle伪类选择器 首页我们知道jQuery对象是一个数组对象 内部结构 jQuery的 ...
- jQuery - 自定义伪类 [:pseudoclass]
有两种创建伪类的方法, 第一种, $.extend( $.expr[':'], { // 自定义的伪类名称:group group: function(element, index, matches, ...
随机推荐
- 查找文本工具grep
许多时候需要从一大堆的命令输出或文本内容中找出一两行关键的内容,例如从系统用户文件中查找某个用户.如果不借助工具,这将是一项非常繁琐的工作,这时可以使用grep工具对内容进行筛选. grep(glob ...
- webpack 编译less/scss文件
1.安装插件 处理less: npm install less-loader --save-dev 处理sass: npm install sass-loader --save-dev 2.项目目录: ...
- session 防止表单重复提交
防止表单重复提交应该现在前台做一遍,再在后台做一遍.这样双重安全而且减轻服务器负担. 代码: package flying.form; import java.io.IOException; impo ...
- HTML-IE6兼容性问题及IE6常见BUG详细汇总
点评:IE6的兼容性问题一直都是前端工程师的恶梦,为了早早脱离这种困境,本文整理了一些相关兼容性的知识,感兴趣的朋友可以参考下哈,希望可以帮助到你- 1.终极方法:条件注释 <!--[if lt ...
- 【转帖】如何利用Spring Cloud构建起自我修复型分布式系统
http://zhidao.baidu.com/link?url=tSKwdn3wr8KUxWMteHmneFtY0KoNZBMK9Xy-RimsdISA4h2neAecgHqggBipz2w6nXr ...
- Coreseek安装测试配置指南(转)
Sphinx--强大的开源全文检索引擎,Coreseek--免费开源的中文全文检索引擎 软件版本:coreseek-4.1 mmseg-3.2.14 autoconf-2.64 老版本的coresee ...
- 探秘蓝牙隐藏API
上次讲解Android的蓝牙基本用法,这次讲得深入些,探讨下蓝牙方面的隐藏API.用过Android系统设置(Setting)的人都知道蓝牙搜索之后可以建立配对和解除配对,但是这两项功能的函数没有在S ...
- JAVA变量的执行顺序
对于静态变量.静态初始化块.变量.初始化块.构造器,它们的初始化顺序以此是(静态变量.静态初始化块)>(变量.初始化块)>构造器.我们也可以通过下面的测试代码来验证这一点: package ...
- MS SQL自定义函数IsPositiveInteger MS SQL自定义函数IsNumeric 水晶报表使用IEnumerable<T>数据源
MS SQL自定义函数IsPositiveInteger 判断字符串是否为正整数,0开始的的数字不算. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON ...
- SMBUS讀取數據的方法
第一步 将HST_D0寄存器清零 第二部 确定HST_STS (SMB_BASE 00h)寄存器裡面的所有狀態位是清除的(写清零) 第三步 往XMIT_SLVA(SMB_BAS ...