创建一个纯CSS的水平导航条

CSS实现垂直/水平导航栏 先看效果 垂直导航栏 水平导航栏 导航栏 = 链接列表 导航栏需要标准的 HTML 作为基础。在我们的例子中,将用标准的 HTML 列表来构建导航栏。导航栏基本上是一个链接列表,因此使用 ul 和 li 元素是非常合适的:<ul> <li><a href="default.asp">Home</a></li> <li&gt... 阅读详情
      按照传统的方法,导航条由放在一行表格单元里的图形图像构成。由于人们不再推荐用表格来定位任何非表格的页面内容,所以很多制作Web的人正在寻找(新的)方法,用结构化的XHTML标记和CSS格式来创建导航条。
一个简单的CSS导航条

创建CSS样式文本导航条的最简单解决方法也许就是把所有的链接都放在一行文本里,就像例A里的一样。

这种方法看起来很合理也很直观。但问题是,把所有的链接都放在一行文本里就很难控制链接之间以及前后的空白。所以,为了避免所有的链接都挤在一起,你最后通常都不得不插入管道(垂直条)和非换行的空白字符作为分隔符。

就如下面的代码所示,结果很难是我们所要的清晰、结构化的标示。

<div id="navbar1">
&nbsp;&nbsp;<a href="link1a.html">Button 1</a> &nbsp;|&nbsp; <a
href="link2a.html ">Button 2</a> &nbsp;|&nbsp; <a href="link3a.html ">
Button 3</a>
</div>

如果为了应用创建按钮背景和滚动效果所需要的额外CSS样式,你就要加入<span>标签,这样的话标示会变得更加混乱。

基于列表的CSS导航条

创建CSS导航条的另一种方法是使用<ul>和<li>标签,把链接作为无序列表(unordered list)来标示。

一眼看上去,对导航条使用无序列表似乎是不符合直观感受的,因为我们习惯于把无序列表作为一个竖着推起来的列表项目,每个前面都放着一个Bullet。这似乎不符合导航条水平方向的习惯。

但是,作为独立列表项目集合的列表逻辑结构能够适用于导航条里的链接;而CSS的规则让你能够强制取代列表项目缺省的表现形式,以消除Bullet并安排列表项在页面之上而不是之下浮动。

知道了这一点,现在让我们来看看例B,根据无序列表创建CSS样式和XHTML标示的导航条。

下面就是XHTML标示:

<div id="navbar2">
<ul>
<li><a href="link1.html">Button 1</a></li>
<li><a href="link2.html ">Button 2</a></li>
<li><a href="link3.html ">Button 3</a></li>
</ul>
</div>


本专栏的固定读者可能会认出这个例子是我用在另一个CSS按钮上的同一个标示。这个技巧吸引人的一个地方是,这个标示对所有按钮都是一样的,无论它们是竖着堆成一列放在主体文本的一边,还是水平放在页面顶端的导航条里。

下面是把文字链接列表转换成导航条的CSS代码:

div#navbar2 {
    height: 30px;
    width: 100%;
    border-top: solid #000 1px;
    border-bottom: solid #000 1px;
    background-color: #336699;
}
div#navbar2 ul {
    margin: 0px;
    padding: 0px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: small;
    color: #FFF;
    line-height: 30px;
    white-space: nowrap;
}
div#navbar2 li {
    list-style-type: none;
    display: inline;
}
div#navbar2 li a {
    text-decoration: none;
    padding: 7px 10px;
    color: #FFF;
}
div#navbar2 lia:link {
    color: #FFF:
}
div#navbar2 lia:visited {
    color: #CCC;
}
div#navbar2 lia:hover {
    font-weight: bold;
    color: #FFF;
    background-color: #3366FF;
}

Div#navbar2样式会设置包含有导航条链接的div的尺寸和背景。

Div#navbar2 ul样式包含有margin和padding声明,以强制取代被分配给无序列表的缺省空白,并设置文字的整体格式。White-space: nowrap声明会保证列表显示在一个水平的行里,即使浏览器的窗口太窄而无法显示整个行。

这个技巧真正的秘密就在div#navbar2 li样式里。List-style-type: none声明会删除通常用来标记每个列表项目的Bullet;而display: inline声明则能够让列表项目在页面上从左向右浮动,而不会让每个项目显示在单独的行里。

这个技巧的另外一个关键元素是div#navbar2 li a规则。Text-decoration: none声明会删除链接常用的下划线,而padding: 7px 10px声明则用来控制导航条里链接(之间)的空白。左侧和右侧间隙用来控制水平间隔,而我们需要顶部和底部间隙,让它们把滚动效果(以及按钮的可点击区域)的彩色背景充满整个导航条。你还可以加入左侧和右侧空白值,如果你想要在按钮之间加入更多空白的话。

最后,:link, :visited和:hover伪类(pseudoclasse)的规则会设置用于滚动效果的颜色变化。

你可以改变这个基本的技巧,以创建很多不同的导航条效果,包括流行的“目录选项卡”样式。


转自:ZDNet China

对列表应用样式和创建导航条 参考自《精通CSS 高级Web标准解决方案(第2版)》第6章 基础知识总结: 伪类和伪元素选择器:https://www.cnblogs.com/ihardcoder/p/5294927.html、https://www.cnblogs.com/zcynine/p/5008985.html 实战技术要点: 写CSS的一些体会(个人理解,待完善) 先整体后局部:先对宽泛的标签添... 阅读详情

相关推荐

10个CSS导航条实例打造完美网页导航

CSS3为设计师提供了前所未有的自由度,可以创建各种非标准形状的导航条。通过使用clip-path属性,可以剪裁出复杂的形状;使用transform属性,可以旋转、倾斜或平移导航项。clip-path:这个属性可以接受不同的值来定义一个元素的可见区域。它可以使用预定义的形状函数(如polygon)、路径、甚至是自定义的多边形坐标。transform。

weixin_35756690的博客 1138

精通 CSS+DIV 网页样式与布局 82

<style> <!– body{ background-color:#ffdee0; }navigation {width:200px; font-family:Arial; }navigation ul {list-style-type:none; /* 不显示项目符号 */ margin:0px; padding:0px; }navigation li {border-bot

相濡以沫si 247

打造完美用户体验的DIV+CSS导航条菜单设计

DIV标签和CSS层叠样式表是现代网页设计的基石,它们共同作用于网页布局和样式的定义。DIV是一种块级元素,用于对页面内容进行逻辑分组,而CSS负责控制这些元素的外观,包括颜色、字体、边距和布局等。导航条作为网页设计中不可或缺的组成部分,其在页面结构中的地位举足轻重。它不仅是用户访问网站时进行页面切换的主要途径,而且承载着引导用户浏览网站内容的使命。一个设计精良的导航条可以有效地帮助用户快速找到他们所需的信息,从而增强网站的可访问性和易用性。

weixin_28787801的博客 1164

CSS基础-14-水平导航栏(示例及详细创建过程)

1. 内联列表实现 2. 浮动列表实现 3. 添加边框 3.1 思路 3.2 实际效果 4. 添加分割线 5. 固定导航栏

架构+开发+运维 1464

css实现水平导航菜单(html文件用记事本查看代码)

css实现水平导航菜单 鼠标移入移出效果 适合新手练习div+css布局

纯CSS实现横向导航栏

纯CSS实现横向导航栏,导航栏分三级子菜单,主要所用的html标签为ul与li

CSS 导航栏

CSS导航栏是网站中一个基本的组成部分,它能够快速帮助用户进行需求选择,也是网站中不可或缺的一部分。CSS导航栏一般由选项列表、子选项列表和搜索框等组成。选项列表是可以点击的链接,子选项列表是鼠标滑过选项列表时出现的更详细的列表,搜索框便于用户搜索目标内容。除此之外,还可以添加LOGO等元素来增加导航栏的个性化。CSS可以设置导航栏的各种外观,包括背景色、宽度、高度、边框等,通过调整这些属性可以使得导航栏更加美观易用。

梁辰兴的博客 3064

HFSS与AI融合:智能算法如何重塑天线设计流程

本文探讨了HFSS与AI融合如何通过智能算法革新天线设计流程。在5G/6G通信时代,AI技术如机器学习和遗传算法显著提升了高频电磁场仿真效率,将传统设计周期从数周缩短至数小时,并优化了天线性能。文章详细介绍了AI与HFSS的集成策略、关键技术突破及典型应用案例,展示了智能算法在天线设计中的巨大潜力。

weixin_29035147的博客 777

入门- 创建一个纯CSS的水平导航条

按照传统的方法,导航条由放在一行表格单元里的图形图像构成。由于人们不再推荐用表格来定位任何非表格的页面内容,所以很多制作Web的人正在寻找(新的)方法,用结构化的XHTML标记和CSS格式来创建导航条。 一个简单的CSS导航条 创建CSS样式文本导航条的最简单解决方法也许就是把所有的链接都放在一行文本里,就像例A里的一样。这种方法看起来很合理也很直观。但问题是,把所有的链接都放在一行文本里就很难控

木木的网络天空 956

【深度学习面试八股文】-- 1-5

1.样本不平衡的处理方法 ①欠采样 - 随机删除观测数量足够多的类,使得两个类别间的相对比例是显著的。虽然这种方法使用起来非常简单,但很有可能被我们删除了的数据包含着预测类的重要信息。 ②过采样 - 对于不平衡的类别,我们使用拷贝现有样本的方法随机增加观测数量。理想情况下这种方法给了我们足够的样本数,但过采样可能导致过拟合训练数据。 ③合成采样( SMOTE )-该技术要求我们用合成方法得到不平衡类别的观测,该技术与现有的使用最近邻分类方法很类似。问题在于当一个类别的观测数量极度稀少时该怎...

m0_37940804的博客 9937

性能测试软件(LR12) 具体汉化(中文)方法

LoadRunner 12 的下载及安装详细过程请参考:https://blog.youkuaiyun.com/xiao66guo/article/details/105465854 1、在LoadRunner文件中找到 Setup.exe 可执行文件,并以管理员的身份运行: C盘 —> Temp—>HP LoadRunner 12.02 Community Edition—> D...

多谢大人光临寒舍,请随便看看,喝口茶吧 ☕️☕️☕️ 1992

css 创建水平导航条

效果如下所示: html代码片段如下所示:<body id="home"> <ul class="nav"> <li class="first"><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">News</a><

tianjun2012的专栏 2480

深度学习基于Resnet18的图像多分类--训练自己的数据集(超详细 含源码)

深度学习基于Resnet18的图像多分类--训练自己的数据集(超详细 含源码)

她是不会无条件的!! 2万+

HTML布局水平导航条1制作

该文是用css制作个导航条,用竖线分隔,导航条是点击的多个区块。步骤:ul里设置需要数量的li,li中加上a链接给ul加样式,去掉默认的前面的点给li设置左浮动,让ul里的li横向排列a链接设置成块状显示,设置宽高和背景色给a加样式,去默认的下划线,设置文本水平居中设置文本垂直居中,由于没有垂直居中样式,用行高来让链接里文字垂直居中给a链接文本设置合适的颜色,替换默认的链接色给已经设置成...

weixin_30609331的博客 876

保姆级教程:用R语言自动化处理FAERS季度数据(从文件合并到删除废弃Case)

本文提供了一份详细的R语言教程,指导如何自动化处理FAERS季度数据,包括文件合并和删除废弃Case。通过使用tidyverse、fs等R包,构建健壮的自动化流程,特别适合药物安全监测领域的数据分析师。教程涵盖环境准备、智能合并多季度数据、精准删除废弃Case等关键步骤,并提供了错误处理与日志记录的实用技巧。

weixin_42701915的博客 124

SpringBoot一次请求中缓存数据,请求结束就清除的4种方法,你会几种?

通过以上四种方法,你可以在 SpringBoot 的一次请求中缓存数据,并在请求结束后自动清除这些缓存数据。使用 ThreadLocal:适用于需要跨多个方法调用的缓存数据,灵活性高,但需要注意内存泄漏问题。使用 AOP:适用于全局性的缓存管理,代码更加优雅,但需要对 AOP 有一定的了解。使用 ServletRequestListener:适用于简单的请求生命周期管理,配置简单,但功能相对有限。使用 HttpServletRequest 的 setAttribute 和 getAttribute。

java专栏 1295

滑动门水平导航条和三层滑动门导航条

滑动门水平导航条 滑动门水平导航条 #menu { font-family:Arial; font-size:14px; margin:0 auto 0 0; }

myjlvzlp的专栏 1636

试读源码在这里下载

试读文章的源码在这里下载。源码不做任何修改,重点重点重点:为了代码运行不报错,安装matlab 版本为 2021 及以上版本。matlab安装教程大家可以参考这个教程:手把手教你安装matlab软件。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 4301

layui水平导航条三级

需求 需要做一个顶部的水平导航条,有三级,展开的时候二级和三级一起展开,结果如图: 效果 一级菜单 二级标题 三级菜单 三级菜单 二级标题 三级菜单 三级菜单 一级菜单 二级标题 三级菜单 三级菜单 三级菜单 二级标题 三级菜单 我是独特的三级菜单 三级菜...

weixin_30883311的博客 1374

循迹小车控制实验:代码集成与硬件验证

在main.c文件中还需定义上层代码调用的GPIO输入和PWM输出相关函数,其中调用STM32CubeMX生成的HAL库函数。}else{}else{}else{}else{在main.h文件中的USER CODE BEGIN EFP注释代码段中外部声明Get函数和Set函数,使该函数可以被上层代码调用。循迹小车控制实验到本章全部完成。相比于前几章节的实验,本实验复杂程度是最高的。

u013288925的博客 127

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: XHTML基础问答-给初学者
下一篇: CSS在IE和Nascape的显示差别
RAINMAN_NET
博客等级 码龄22年 2粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值