第8章  使用CSS美化列表

8.1 列表的基本结构

在HTML中,列表结构可以分为两种基本类型:有序列表和无序列表。使用标签如下:

  • <ul>...</ul>:标识无序列表;
  • <ol>...</ol>:标识有序列表;
  • <li>...<li>:标识列表项目。

另外,还可以使用定义列表。定义列表包括词条和解释两块内容。包含的标签说明如下:

  • <dl>...</dl>:标识定义列表;
  • <dt>...</dt>:标识词条;
  • <dd>...</dd>:标识解释。

8.2 创建列表

8.2.1 无序列表

8.2.2 有序列表

<ol>标签包含3个比较实用的属性,这些属性同时获得HTML5支持。具体说明如下:

<ol>标签属性
属性 取值 说明
reversed reversed 定义列表顺序为降序
start number 定义有序列表的起始值
type 1、A、a、I、i 定义在列表中实用的标记类型

8.2.3 定义列表

定义列表以<dl>标签形式出现,在<dl>标签中包含了<dt>和<dd>标签,一个<dt>标签对应着一个或多个<dd>标签。

8.2.4 菜单列表

在HTML5中重新定义了<menu>标签。实用<menu>可以定义命令的列表或菜单。<menu>中可以包含<command>和<menuitem>标签,用于定义命令和项目。

<command>标签可以定义命令按钮,如单选按钮、复选框或按钮。只有当command元素位于menu元素内,该元素才可见。

目前,只有IE9(更早或更晚的版本都不支持)和最新版本的Firefox支持<command>标签。

<command>标签包含的属性有:

<command>标签属性
属性 取值 说明
checked checked 定义是否被选中。仅用于radio或CheckBox类型
disabled disabled 定义command是否可用
icon URL 定义作为command来显示的图像的URL
label text 为command定义可见的label
type checkbox、command、radio 定义该command的类型,默认为command
radiogroup groupname 定义command所属的组名,仅在类型为radio时使用

<menu>标签也包含两个专用属性,简单说明如下:

  • label:定义菜单的可见标签;
  • type:定义要显示哪种菜单类型,取值如下:
    • list:默认值,定义列表菜单;
    • context:定义上下午菜单,该菜单必须在用户能够与命令进行交互前被激活;
    • toolbar:定义工具栏菜单,活动式命令,允许用户立即与命令进行交互。

8.2.5 弹出菜单

<menuitem>标签定义用户可以从弹出菜单调用的命令/菜单项目。

目前,仅有Firefox8.0+版本支持<menuitem>标签。

<menuitem>包含的属性有:

<menuitem>标签属性
属性 取值 描述
checked checked 定义在页面加载后选中命令/菜单项目。仅适用于type="radio"或type="checkbox"
default default 把命令/菜单项设置为默认命令
disabled disabled 定义命令/菜单项应该被禁用
icon URL 定义命令/菜单项的图标
label text 必需。定义命令/菜单项的名称,以向用户显示
radiogroup  groupname 定义命令组的名称,命令组会在命令/菜单项本身被切换时进行切换。仅适用于type="radio"
open open 定义details是否可见
type checkbox、command、radio 定义命令/菜单项的类型

8.2.6 案例:设计图片旋转功能

8.2.7 案例:设计分享功能

8.2.8 案例:添加任务列表

8.3  设计CSS样式

列表默认状态:左侧附加项目符号,列表项目缩进显示。CSS为列表结构定义了几个专门属性:

CSS专用列表属性
属性 说明
list-style 符合属性。设置列表项目相关内容
list-style-image 设置列表项目的符号图像
list-style-position

设置列表符号的显示位置,根据文本在内或在外排列,取值包括outside | inside

list-style-type 设置列表项目符号的类型

8.3.1 设计项目符号类型

CSS使用list-style-type属性定义列表项目符号的类型,属性取值说明如下:

list-style-type属性值
属性值 说明 属性值 说明
disc 实心圆,默认值 upper-roman 大写罗马数字
circle 空心圆 lower-alpha 小写英文字母
square 实习方块 upper-alpha 大写英文字母
decimal 阿拉伯数字 none 不适用项目符号
lower-roman 小写罗马数字 armenian 传统的亚美尼亚数字
cjk-ideographic 浅白的表意数字 georigian 传统的乔治数字
lower-greek 基本的希腊小写字母 hebrew 传统的希伯莱数字
hiragana 日文平假名字符 hiragana-iroha 日文平假名序号
katakana 日文片假名字符 katakana-iroha 日文片假名序号
lower-latin 小写拉丁字母 upper-latin 大写拉丁字母

CSS使用list-style-position属性定义项目符号的显示位置,取值包括outside和inside。outside表示把项目符号显示在列表项的文本行以外,inside表示把项目符号显示在文本行以内。

8.3.2 自定义项目符号

使用list-style-image属性可以自定义项目符号,该属性允许指定一个外部图标文件,满足个性化设计需求,用法如下:

list-style-image: none | <url>

默认值为none。

8.3.3 使用背景图设计项目符号

使用背景图像定义项目符号需要掌握两个设计技巧:

  1. 隐藏列表结构的默认项目符号,方法是设置list-style-type:none。
  2. 为列表定义背景图像,指定要显示的项目符号,利用背景图精确定位技术控制其显示位置;同时增加列表项左侧空白,避免背景图被列表文本遮盖。

学习笔记 第八章 使用CSS美化列表的更多相关文章

  1. 学习笔记 第十章 使用CSS美化表单

    第10章   使用CSS美化表单 [学习重点] 正确使用各种表单控件 熟悉HTML5新增的表单控件 掌握表单属性的设置 设计易用性表单页面 10.1  表单的基本结构 表单包含多个标签,由很多控件组成 ...

  2. 学习笔记 第九章 使用CSS美化表格

    第9章  使用CSS美化表格 学习重点 正确使用表格标签: 设置表格和单元格属性: 设计表格的CSS样式. 9.1 表格的基本结构 表格由行.列.单元格3部分组成,单元格时行与列交叉的部分. 在HTM ...

  3. HTML+CSS学习笔记(8)- CSS选择器

    标签:HTML+CSS 什么是选择器? 每一条css样式声明(定义)由两部分组成,形式如下: 选择器{ 样式; } 在{}之前的部分就是"选择器","选择器"指 ...

  4. 学习笔记:MDN的CSS

    HTML用于定义内容的结构和语义,CSS用于设计风格和布局. CSS规则由选择器和声明块组成:声明由属性(properties)和属性值组成. CSS介绍: 盒=框=box,边界=border,内边距 ...

  5. OpenLayers学习笔记3——使用jQuery UI美化界面设计

    PC端软件在开发是有较多的界面库能够选择,比方DevExpress.BCG.DotNetBar等,能够非常方便快捷的开发出一些炫酷的界面,近期在学习OpenLayers.涉及到web前端开发,在设计界 ...

  6. [HeadFist-HTMLCSS学习笔记][第七章CSS入门:加一点样式]

    CSS入门 style元素设置CSS 基本格式 <style type="text/css"> body { background-color: #eaf3da; } ...

  7. vue学习笔记(二)- 数据绑定、列表渲染、条件判断

    vue的数据绑定和列表渲染的造轮子 GitHub:八至 作者:狐狸家的鱼 双向数据绑定 Vue中数据的双向绑定-v-model 数据->页面 页面->数据 适用:input.select. ...

  8. Javaweb学习笔记——(二)——————CSS概述,进入JavaScript

    day02day01内容回顾 1.html操作思想 **使用标签把要操作的数据包起来,通过修改标签的属性值来是实现标签内数据样式的变化 ***<font size="5"&g ...

  9. 如鹏网学习笔记(八)CSS

    CSS 一.CSS简介 1,CSS (Cascading Style Sheets) 级联样式表 ,是一种计算机语言,用来控制HTML内容的显示效果 2,CSS预先定义了众多的和显示效果有关的样式属性 ...

随机推荐

  1. Android中View窗口getWidth和getMeasuredWidth的差别

    今天在研究自己定义listview的下拉刷新的效果.想移植到项目需求中,再看自己定义源代码时发现了一个问题就是getWidth和getMeasuredWidth两个方法有什么差别,求教万能的百度,经调 ...

  2. 初探swift语言的学习笔记十一(performSelector)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/35842441 转载请注明出处 假设认为文章对你有所帮助,请通过留言 ...

  3. Navicat for MySQL出现1030-Got error 28 from storage engine错误

    Navicat for MySQL出现1030-Got error 28 from storage engine错误  刚刚还能用这会儿就用不了了,估计是磁盘空间不足引起的! 在根目录/下执行命令:d ...

  4. springMVC中的中心控制Servlet是那个类?(B)

    A:ActionServlet B:DispatcherServlet C:AbstractController D:FacesServlet

  5. bzoj2101【Usaco2010 Dec】Treasure Chest 藏宝箱

    2101: [Usaco2010 Dec]Treasure Chest 藏宝箱 Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 418  Solved: ...

  6. VA市场高烧已退,逐渐降温

    本周市场国产VA报价在175元/公斤左右,较上周滑落.因前期停报的厂家均已报价,个别国产厂家报价较低,各厂家间报价价差较大,彰显不同态度.国内厂家供应依然偏紧,但较前期已缓解.中小饲料企业库存偏低,近 ...

  7. 自己动手写最简单的Android驱动---LED驱动的编写【转】

    本文转载自:http://blog.csdn.net/k_linux_man/article/details/7023824 转载注明出处,作者:K_Linux_Man, 薛凯 山东中医药大学,给文章 ...

  8. POJ - 3308 Paratroopers(最大流)

    1.这道题学了个单词,product 还有 乘积 的意思.. 题意就是在一个 m*n的矩阵中,放入L个敌军的伞兵,而我军要在伞兵落地的瞬间将其消灭.现在我军用一种激光枪组建一个防御系统,这种枪可以安装 ...

  9. 工作笔记——sqlserver引号的运用

    一. sqlserver引号问题:因为要使用远程连接,所以sql语句要用单引号括起来 SELECT * FROM OPENQUERY ([192.168.***.***] ,'select * fro ...

  10. Linux网络协议栈(三)——网络设备(2)

    2.1.网络设备的注册与注销注册网络设备发生在下列情形: (1)加载网卡驱动程序   网卡驱动程序如果被编译进内核,则它在启动时被初始化,在运行时被作为模块加载.无论初始化是否发生,所以由驱动程序控制 ...