CSS常用属性之(列表、表格、鼠标)属性,(如果想知道CSS的列表、表格、鼠标相关的属性知识点,那么只看这一篇就足够了!)

简介: CSS常用属性之(列表、表格、鼠标)属性,(如果想知道CSS的列表、表格、鼠标相关的属性知识点,那么只看这一篇就足够了!)

1.列表相关属性

       先来看一下有哪些常用的列表属性:

       (1)list-style-type

属性作用:用于指定列表前标记的样式。

常用值如下:

       none :不显示前面的标识(很常用!)

       square :实心方块

       disc :圆形

       decimal :数字

       lower-roman :小写罗马字

       upper-roman :大写罗马字

       lower-alpha :小写字母

       upper-alpha :大写字母

我们使用实心方块来进行演示说明:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.23.css">
</head>
<body>
    <!-- 创建一个列表 -->
    <ul>
        <li>星期一</li>
        <li>星期二</li>
        <li>星期三</li>
        <li>星期四</li>
        <li>星期五</li>
        <li>星期六</li>
        <li>星期天</li>
    </ul>
</body>
</html>

CSS代码:

/* 将无序列表前的标志改为实心方块 */
li {
    list-style-type: square;
}

这样我们就将指定列表前标记的样式进行了修改。

       (2)list-style-image

属性作用:用于自定义列表前标记的样式。

使用方式:

/* 在list-style-image使用url(图片地址) */
li {
    list-style-image: url();
}

例如:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.23.css">
</head>
<body>
    <!-- 创建一个列表 -->
    <ul>
        <li>星期一</li>
        <li>星期二</li>
        <li>星期三</li>
        <li>星期四</li>
        <li>星期五</li>
        <li>星期六</li>
        <li>星期天</li>
    </ul>
</body>
</html>

CSS代码:

/* 自定义无序列表前的标志样式 */
li {
    list-style-image: url(./小飞机1.png);
}

这样我们就可以使用自己喜欢的样式来替代列表前的样式了。

       (3)list-style-position

属性作用:用于指定列表前样式的位置。

常见值:

       "list-style-position: outside;" 表示项目符号点将在列表项之外。

       "list-style-position: inside; " 表示项目符号将在列表项内。

看完之后感觉不是太明白什么是列表项之外,什么是列表项之内?那么我们使用一个例子来使你进一步了解:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.23.css">
</head>
<body>
    <!-- 创建一个列表 -->
    <ul>
        <li>星期一</li>
        <li>星期二</li>
        <li>星期三</li>
        <li>星期四</li>
        <li>星期五</li>
        <li>星期六</li>
        <li>星期天</li>
    </ul>
</body>
</html>

CSS代码:

/* 设置列表前样式为圆形,并且为外部 */
li {
    list-style-type: disc;
    list-style-position: inside;
    background-color: orange;
}

当我们将参数改为inside后:

/* 设置列表前样式为圆形,并且为内部 */
li {
    list-style-type: disc;
    list-style-position: inside;
    background-color: orange;
}

我们可以发现,列表前样式与文字同时被背景颜色进行修饰了,简而言之为指定列表前样式是显示在内容流的内部还是外部。

这样我们就了解了列表前样式的位置属性的使用方式了。

       (4)list-style

属性作用:用于复合之前的属性,使代码更加的简洁。

例如:我们想将列表前的样式改为大写的罗马数字并且列表前的样式在列表的里面:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <ul>
        <li>星期一</li>
        <li>星期二</li>
        <li>星期三</li>
        <li>星期四</li>
        <li>星期五</li>
        <li>星期六</li>
        <li>星期其</li>
    </ul>
</body>

CSS代码:

/* 将列表前的样式改为大写的罗马数字 并且 列表前的样式在列表的里面 */
ul li {
    background-color: orange;
    list-style: upper-roman inside;
}

注意:将属性进行复合的时候,没有数量、顺序的要求,属性之间只需要使用空格隔开即可。

2.表格相关的属性

       表格相关的属性大致分为两种:一种为其他元素也能用,另一种为只有table标签才能使用,那么先让我们看一下有哪些有关表格的属性:

那么我们就按照顺序,先介绍其他元素也可以使用的属性:

【1】其他元素也能用的属性

       (1)border-width

属性作用:用于设置边框宽度。

我们使用实例来进一步进行理解:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <div>我要开始学习CSS表格属性!</div>
</body>
</html>

CSS代码:

/* 将div元素周边设置一圈10px大小的边框 */
div {
    border-width: 10px;
}

但是当我们要查看作用效果的时候,我们会发现好像和没有设置一样,并没有什么变化。这是因为border-width、border-color、border-style三个属性是连锁的,即只有当三个属性都进行设置了之后才会有结果。

那么我们先将border-color、border-style了解完之后,在回来测试代码的作用。

       (2)border-color

属性作用:用于设置边框颜色。

其属性值可为 CSS 中可用的颜色值。

       (3)border-style

属性作用:用于设置边框样式。

常用属性值:

       1. none 默认值

       2. solid 实线

       3. dashed 虚线

       4. dotted 点线

       5. double 双实线

我们迅速了解完border-width、border-color、border-style三个属性之后,我们在来设置一下元素边框,只不过这次加上了border-color、border-style属性

这次的html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <div>我要开始学习CSS表格属性!</div>
</body>
</html>

CSS代码:

/* 将div元素周边设置一圈10px大小、颜色为天蓝色、样式为实线的边框 */
div {
    border-width: 10px;
    border-color: skyblue;
    border-style: solid;
}

这样我们就将能用在其他元素身上的border-width、border-color、border-style三个属性了解了,当然border属性也有复合属性,即将三个属性直接写到一个border属性上:(代码如下)

/* 将div元素周边设置一圈10px大小、颜色为天蓝色、样式为实线的边框 */
div {
    border: 10px skyblue solid;
}

这样我们就了解了能写在其他元素身上的有关表格的属性,那么接下来让我们了解只有table标签才能使用的属性。

【2】只有table标签才能使用的属性

       (1)table-layout

属性作用:用于设置表格的列宽度。

常用属性值:

       auto :自动,列宽根据内容计算(默认值)。
       fixed :固定列宽,平均分。

让我们直接使用代码来进一步理解:

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <table border="1px">
        <caption>六年级二班的学生信息</caption>
        <thead>
            <tr>
                <th>姓名</th>
                <th>年龄</th>
                <th>学生的性别</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>zhangsan</td>
                <td>11</td>
                <td>男</td>
            </tr>
            <tr>
                <td>lisi</td>
                <td>10</td>
                <td>女</td>
            </tr>
            <tr>
                <td>wangwu</td>
                <td>12</td>
                <td>男</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="3">以上为六年级二班所有学生信息</td>
            </tr>
        </tfoot>
    </table>
</body>
</html>

CSS代码:

我们会发现使用auto后,如果表格头文字多,那么其列宽就宽,如果文字少,那么列宽就小,这即是设置为auto属性值后的效果。

如果我们设置的属性值为fixed:

/* 设置表格宽高,并且列宽为fixed */
table {
    width: 400px;
    height: 300px;
    table-layout: fixed;
}

如果将table-layout的属性值设置为fixed后,各列的列宽就都相同了。

       (2)border-spacing

属性作用:用于设置表格的单元格间距。

我们直接使用案例讲解,如果我们将上述的表格设置其border-spacing为10px,那么它会变成什么样呢?

CSS代码:

/* 设置单元格间距为10px */
table {
    width: 400px;
    height: 300px;
    border-spacing: 10px;
}

明显我们发现单元格直接出现了空隙,并且其大小为10px。

注意:设置border-spacing属性值生效的前提为单元格边框不能合并。(接下来会讲解,先了解)

       (3)border-collapse

属性作用:用于合并单元格边框。

常用属性值:

       collapse :合并

       separate :不合并

现在我们在设置了border-spacing为10px的情况下,我们设置一下border-spacing的值,让我们看一下会发生什么:

CSS代码:

/* 设置单元格间距为10px 又设置了border-collapse为collapse */
table {
    width: 400px;
    height: 300px;
    border-spacing: 10px;
    border-collapse: collapse;
}

这时候我们就会发现设置的border-spacing属性值失效了,这也是上文中提到的(设置border-spacing属性值生效的前提为单元格边框不能合并),如果设置了合并那么border-spacing属性值即会失效。

       (4)empty-cells

属性作用:用于隐藏没有内容的单元格。

常用属性值:

       show :显示,默认
       hide :隐藏

让我们直接使用案例看一下结果:

我们还是使用之前的六年级二班的案例,只不过这次我们将zhangsan的年龄所在的单元格设置为空。

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <table border="1px">
        <caption>六年级二班的学生信息</caption>
        <thead>
            <tr>
                <th>姓名</th>
                <th>年龄</th>
                <th>学生的性别</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>zhangsan</td>
                <td></td>
                <td>男</td>
            </tr>
            <tr>
                <td>lisi</td>
                <td>10</td>
                <td>女</td>
            </tr>
            <tr>
                <td>wangwu</td>
                <td>12</td>
                <td>男</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="3">以上为六年级二班所有学生信息</td>
            </tr>
        </tfoot>
    </table>
</body>
</html>

CSS代码:

/* 设置单元格间距为10px 又设置了border-collapse为separate */
table {
    width: 400px;
    height: 300px;
    border-spacing: 10px;
    border-collapse: separate;
}

我们会发现zhangsan的年龄信息为空,这和我们预料的相同,但是如果这是我们设置了empty-cells属性值为hide会怎么样呢?

CSS代码:

/* 设置单元格间距为10px 又设置了border-collapse为separate 设置empty-cells为hide*/
table {
    width: 400px;
    height: 300px;
    border-spacing: 10px;
    border-collapse: separate;
    empty-cells: hide;
}

我们就会发现zhangsan的年龄信息所在的单元格没有了,这就是设置empty-cells为hide的效果。这样我们就了解了empty-cells属性。

注意:设置empty-cells为hide生效前提也是单元格不能合并。

       (4)caption-side

属性作用:用于设置表格标题位置。

常用属性值:

       top :上面(默认值)

       bottom :在表格下面

我们直接使用上边案例,只不过使用caption-side属性将其表格标题改到下边。

CSS代码:

/* 设置标题在表格的下方 */
table {
    width: 400px;
    height: 300px;
    caption-side: bottom;
}

这样我们就了解了所有常用的有关只有table标签才能使用的属性。

3.鼠标相关的属性

以下为鼠标相关的属性

CSS属性名 功能 属性值
cursor 设置鼠标光标的样式 pointer :小手
move :移动图标
text :文字选择器
crosshair :十字架
wait :等待
help :帮助

我们使用一个案例进行演示(使用属性值为小手)

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./2024.4.25.css">
</head>
<body>
    <div><img src="./fish.jpg" alt="fish"></div>
</body>
</html>

CSS代码:

/* 将鼠标放在div上就会变为小手 */
img {
    width: 300px;
    height: 300px;
    cursor: pointer;
}

这样我们就了解了鼠标相关的属性。

相关文章
|
25天前
CSS3实现的九宫格图片鼠标悬停去除遮罩层源码
CSS3实现的九宫格图片鼠标悬停去除遮罩层源码
17 0
CSS3实现的九宫格图片鼠标悬停去除遮罩层源码
|
29天前
|
前端开发
CSS 浮动属性讲解和使用
本文介绍了CSS中的浮动(float)属性,包括其基本功能、属性选项及其在网页布局中的应用。浮动使元素脱离文档流,向左或右排列,周围元素随之调整。文章还详细讲解了清除浮动的方法,如使用clear属性、设置父元素高度、利用overflow属性、伪元素等,以解决因浮动导致的布局问题。最后,强调了浮动在创建复杂布局时的作用,并预告后续内容。
35 2
|
29天前
|
前端开发
CSS transition过渡属性详解
本文介绍了CSS中`transition`属性的作用、用法及实例。`transition`用于在元素属性变化时添加平滑过渡动画,通过设置`transition-property`、`transition-duration`、`transition-timing-function`和`transition-delay`等属性值,可以精细控制过渡效果。文末提供了HTML示例代码,展示了如何使用`transition`实现鼠标悬停时背景颜色的平滑变化。
42 1
|
1月前
|
Web App开发 前端开发 iOS开发
css所有缩写属性,CSS属性简写整理
css所有缩写属性,CSS属性简写整理
31 1
|
29天前
|
前端开发
纯css3经典列表式手风琴插件
这是一款十分经典的纯css3列表手风琴插件。该插件使用css兄弟选择器和:target伪类来实现。
|
4月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
|
23天前
|
前端开发 测试技术 定位技术
如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤
本文深入介绍了如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤。通过实例展示了主页、关于我们、产品展示、新闻动态及联系我们等页面的设计与实现,强调了合理布局、美观设计及用户体验的重要性。旨在为企业打造一个既专业又具吸引力的线上平台。
46 7
|
23天前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
31 6