CSS双线边框研究
来源:豆豆猫的窝 发布时间:2009-09-03 12:12:00
昨天有人在群里问图1的边框效果是否能实现。
边框效果图
有人给出答案,需要嵌套一个元素实现。我当时粗粗写了个测试页面,但是时间太晚了,也没有细弄,今天把想法写出来。
CSS的边框border属性经常会用到,但是,其参数值到底有几个?未必大家都知道。
以下是《CSS属性、浏览器兼容与网页布局》中关于边框样式的部分内容:
8.8.3 边框样式
只定义边框的宽度并不会使元素显示边框,因为边框样式的默认设定为“none(无)”,边框样式规定了边框的线型(实线,双线,点线等),而且也包括4个方向的属性:border-top-style、border-right-style、border-bottom-style、border-left-style和缩写属性border-style。
其具体定义列表如下:
语法:
border-top- style: none | hidden | <关键字> | inherit
border-right- style: none | hidden | <关键字> | inherit
border-bottom- style: none | hidden | <关键字> | inherit
border-left- style: none | hidden | <关键字> | inherit
说明:
设定元素边框的线型
值:
none:没有边框。该值迫使border-width的计算值为0。
hidden:和none相似,除非在表格元素中解决边框冲突时。
线型的关键字包括:
dotted:
边框是一系列的点。
dashed:
边框是一系列的短线条的段。
solid:
边框是一条单一的线。
double:
边框有两条实线。两条线宽和其中的空白的宽度之和等于border-width的值。
groove:
边框看上去好象是雕刻在画布之内。
ridge:
和grove相反:边框看上去好象是从画布中凸出来。
inset:
该边框使整个框看上去好象是嵌在画布中。
outset:
和inset相反:该边框使整个框看上去好象是从画布中凸出来。
初始值:
none
继承性:
不继承
适用于:
所有元素
媒体:
视觉
计算值:
同指定值
浏览器不同,边框样式的显示也有所不同,如图2所示。
图2 不同浏览器边框样式的不同表现形式
由图2读者还可以发现,边框在背景之上。
从上图,可以发现double类型的边框,和图1想实现的效果比较类似,是否可以利用?
.test1 .text1 { border:1px double #06F; }
.test1 .text2 { border:2px double #06F; }
.test1 .text3 { border:3px double #06F; }
.test1 .text4 { border:7px double #06F; }
.test1 .text5 { border:8px double #06F; }
.test1 .text6 { border:9px double #06F; }
<ol class="test1">
<li><input type="text" name="username" value="border-width:1px;" class="text1" /></li>
<li><input type="text" name="username" value="border-width:2px;" class="text2" /></li>
<li><input type="text" name="username" value="border-width:3px;" class="text3" /></li>
<li><input type="text" name="username" value="border-width:7px;" class="text4" /></li>
<li><input type="text" name="username" value="border-width:8px;" class="text5" /></li>
<li><input type="text" name="username" value="border-width:9px;" class="text6" /></li>
</ol>
[提示:你可先修改部分代码,再按运行]
在各浏览器内的显示如图3所示。
图3 不同宽度的double在各浏览器内的表现
猜你喜欢
- 以下摘录自 oreilly.JavaScript.The.Definitive.Guide.5th.Edition.Aug.200
- 我想把本篇作为css基础教程的序曲,从今天开始翻译和整理我从设计网页以来所学到的css基础知识。本教程会分成N个部分,单独发表,其间可能会插
- 格式为: SCRENC [/s] [/f] [/xl] [/l defLanguage ] [/e de
- SQL Server 2005数据库中增加了XML类型,在创建表的时候可以指定某一列为XML类型,示例如下:CREATE TABL
- 为什么我写ASP分页教程要提到AJAX呢,因为我们要多练习一下编程过程中,结构化的重要性. 再加上很多朋友对分页感到很高深,所以一直都不敢去
- 一: 删除LOG1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库2:删除LOG文件3:附加数据库 企业管理器->服务器-
- 前言:项目的成就感来源于大家~~必须先感谢一切该感谢的人!(旁白:写了很多次设计实录分享,这次是最百感交集的一次,话多这习惯还大家海涵~嘻嘻
- 这个绝对是IE6的bug。我想要达到的是如下的效果。通过三个div,排布好侧栏和内容区。我用了如下的css:<style type=&
- /usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysqlunzip mysql-5.
- 本文主要介绍 SQLServerExpress2008不用第三方工具调试T-SQL语句,经过本文的介绍,用SQLSERVER2008 Man
- 又发现一个IE不标准的地方,unshift方法会返回新数组的长度,但IE6与IE7则返回undefined。var a = [3,2,1,4
- 内容摘要:“ASP”(Active Server Pages)作为一种典型的服务器端网页设计技术,被广泛地应用在网上银行
- 1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数
- 我有个MM在网上面安了家,想做一个关于特效的网站。她虽然懂一点网页制作,但是她的机器配置比较低,有时为了反复试验页面上一些特殊效果,而打开D
- 1**:请求收到,继续处理2**:操作成功收到,分析、接受3**:完成此请求必须进一步处理4**:请求包含一个错误语法或不能完成5**:服务
- 无意中看到以前在电脑上保存的一个html页面,关于div水平垂直居中的问题。如何实现div水平垂直居中呢?1.已知宽高度水平垂直居中posi
- 您可以将SQL Server 数据库引擎升级到 SQL Server 2008。SQL Server 安装程序只需最少的用户干预就可升级 S
- 在学习asp过程中相信很多初学者对Sub与Function的用法有些疑惑,好像它们没什么区别都可以使用。呵呵,看了本文的介绍您就可以了解了S
- 以下是一个类文件,下面的注解是调用类的方法注意:如果系统不支持建立Scripting.FileSystemObject对象,那么数据库压缩功
- 一、读者指引读者指引帮助你掌握本文的梗概。以免你看了大半才明白这编文章不适合你,给你造成视觉污染。如果你正在用ASP+XML写一些程序,或者