访问过 Microsoft 中文主页的很多人都不会忘记它新奇的下拉式菜单吧. 它的确给我们带来一股清新的网风, 它实现了网页上下拉菜单, 不仅剩去了很多点击的麻烦, 并开创了一个网页设计的
未来之路.
我们知道, 通过 CSS 可以确切地定义一个 HTML 元素的样式,包括它的颜色、字体、边框、3D效果、滤镜等等,我们在考虑制作下拉菜单时,首先是想到 CSS 的定位技术,它精确的定位能力可以使我们放心的甚至是在三维空间设置位置和可见性。
CSS 定位使用"position"属性的两种方法定位 HTML 元素,这就是相对定位(relative)和绝对定位(absolute),相关的定位属性有9个:
position、left、top、width、height、clip、overflow、z-index、visibility
当使用"absolute(绝对)"定位元素时,该元素就被当作一个矩形覆盖物来格式化,格式化后的矩形区域就变成了一个可以放置其他 HTML 元素的容器,这个容器可以凌驾于 HTML 文档的布局之上,区域下面的文字和图形永远也无法环绕和透过该容器显示出来。这样被绝对定位了的元素我们称之为块级元素,在块级元素内放置的 HTML元素我们称之为子元素。
另外,当我们在移动鼠标时,具有对 HTML 元素有感应的 JAVA 动作是 onmouseup、onMouseOver、onMouseOut.
onmouseup 为鼠标点击之后的释放动作
onMouseOver 为鼠标经过时的动作
onMouseOut 为鼠标离开某区域时的动作.
除此之外,我们建立菜单都是为了表达一定的快捷的操作,通常是超级连接(URL).菜单上的每一条命令都应该对鼠标的行踪、点击有感应。所以,必须建立菜单对鼠标行为的多级捕获。首先是容器本身(块级元素)对鼠标经过时和离开时建立捕获,其次是菜单上各条命令对鼠标行为的捕获。也就是鼠标经过时,菜单打开响应,鼠标离去是菜单关闭。
因为菜单都是在网页调入时动态建立的,为了减轻浏览器的运行负担,加快速度,所以各个菜单只初始化一次,以后的打开和关闭操作仅仅是容器本身(块级元素)的可视与隐藏而已。
菜单的动态建立用 document.write 语句完成。 ---- 也因为是使用 CSS,因此每个菜单的第一句开头应该如此:
document.write ('<STYLE type="text/css" >...后跟菜单定位语法,根据浏览器的不同一般而言,Netscape 用相对定位, IE 用绝对定位要好一些。
然后是建立容器(块级元素) 对鼠标 onMouseOver 、 onMouseOut 的捕获。可以这样写: document.write('<span id=菜单标识 onMouseOver="发生的打开动作" onMouseOut="菜单的关闭动作" >...
其次,以如下方式层层建立菜单及捕获行为。需要注意的是菜单项定义是和鼠标感应操作定义在一块的。
<a href="超级连接" onMouseOver="菜单响应事件" onMouseOver="菜单关闭事件">第一条命令</a ><br >
<a href="超级连接" onMouseOver="菜单响应事件" onMouseOver="菜单关闭事件" >第二条命令</a ><br >
<a href="超级连接" onMouseOver="菜单响应事件" onMouseOver="菜单关闭事件" >第三条命令</a ><br >
...
如果要把菜单加上边框的话,只须在菜单(块级元素)属性里加上 border: <粗细 ><长度 ><颜色 ><三维效果 >即可。例如:
...{padding: 2pt} #TestMenu1{border:thin soild outsetposition:absolute... 就成为一个立体的细边菜单。
以下是原代码 6KB,载入浏览器时,鼠标在“下拉菜单演示”、“编译器”和“许可说明” 停靠时,便会出现下拉式菜单。
一、只对表格table标签设置边框 - TOP
只对table标签设置border(边框)样式,将让此表格最外层table一个边框,而表格内部不产生边框样式。
案例详细如下:
1、对应css代码
<style>.table-a table{border:1px solid #F00} /* css注释:只对table标签设置红色边框样式 */ style>
2、对应html代码片段
<divclass="table-a"><tablewidth="400"border="0"cellspacing="0"cellpadding="0"><tr><tdwidth="105">站名td><tdwidth="181">网址td><tdwidth="112">说明td>tr><tr><td>DIVCSS5td><td>www.divcss5.comtd><td>CSS学习td>tr><tr><td>CSS5td><td>www.css5.com.cntd><td>CSS切图td>tr>table>div>
二、对td设置边框 - TOP
对table表格td设置边框样式,表格对象内td将实现边框样式,但中间部分td会导致出现双边框。
详细案例教程如下:
1、对应css代码
<style>.table-b table td{border:1px solid #F00} /* css注释:只对table td标签设置红色边框样式 */ style>
2、对应html源代码片段
<divclass="table-b"><tablewidth="400"border="0"cellspacing="0"cellpadding="0"><tr><tdwidth="105">站名td><tdwidth="181">网址td><tdwidth="112">说明td>tr><tr><td>DIVCSS5td><td>www.divcss5.comtd><td>CSS学习td>tr><tr><td>CSS5td><td>www.css5.com.cntd><td>CSS切图td>tr>table>
三、对table和td技巧性设置表格边框 - TOP
如上第二点,只对表格对象td设置单一边框样式,中间部分td与td标签之间就会出现双边框现象。
解决方法:对td只设置两个边的边框,对table也设置两个边的边框样式。
解释:对td设置左与上边框,这样td与td相邻就会只出现单一边框样式,这样就会出现表格右侧和下部没有边框,这个时候我们设置table右和下 边框解决显示右侧和下侧td剩下未显示边框。
1、对应css代码:
<style>.table-c table{border-right:1px solid #F00border-bottom:1px solid #F00} .table-c table td{border-left:1px solid #F00border-top:1px solid #F00} /* css 注释: 只对table td设置左与上边框; 对table设置右与下边框; 为了便于截图,我们将css 注释说明换行排版 */ style>
2、对应html源代码片段:
<divclass="table-c"><tablewidth="400"border="0"cellspacing="0"cellpadding="0"><tr><tdwidth="105">站名td><tdwidth="181">网址td><tdwidth="112">说明td>tr><tr><td>DIVCSS5td><td>www.divcss5.comtd><td>CSS学习td>tr><tr><td>CSS5td><td>www.css5.com.cntd><td>CSS切图td>tr>table>
四、对table和td设置背景,实现完美表格边框 - TOP
1、基础设置
1)、先设置table css背景为红色
2)、设置table单元之间间距为1
使用DW软件辅助设置table表格单元间距为1,具体DW软件可视化操作步骤简要说明,首先(视图模式)选中表格后,对应DW软件编辑窗口底部会“属性”面板会出现对应table表格属性设置地方,我们将“间隔”填写为“1”。这个时候我们会看到table表格标签里cellspacing值为“1”(cellspacing="1")。
借助DW软件设置表格单元之间间距
或
直接对
标签内cellspacing="1"即可,得到:
<tablewidth="400"border="0"cellspacing="1"cellpadding="0">
3)、设置table td背景为白色
2、css代码:
<style>.table-d table{ background:#F00} .table-d table td{ background:#FFF} /* css注释:设置table背景为红色,td背景为白色 */ style>
3、对应html源代码:
<divclass="table-d"><tablewidth="400"border="0"cellspacing="1"cellpadding="0"><tr><tdwidth="105">站名td><tdwidth="181">网址td><tdwidth="112">说明td>tr><tr><td>DIVCSS5td><td>www.divcss5.comtd><td>CSS学习td>tr><tr><td>CSS5td><td>www.css5.com.cntd><td>CSS切图td>tr>table>div>
五、css table表格边框实现总结 - TOP
以上四种方式实现table表格边框样式方法,推荐使用第三和第四种方法来解决表格边框样式。希望DIVCSS5整理总结html table边框布局方法对大家有帮助并能掌握,平时需要时灵活运用。