CSS常用属性

CSS常用属性

1. 像素的概念

  • 概念:我们的电脑屏幕是,是由一个一个“小点”组成的,每个“小点”,就是一个像素(px)。
  • 规律:像素点越小,呈现的内容就越清晰、越细腻。

注意点:如果电脑设置中开启了缩放,那么就会影响一些工具的测量结果,但这无所谓,因为我们工作中都是参考详细的设计稿,去给元素设置宽高。

2. 颜色的表示

2.1 表示方式一:颜色名

  • 编写方式:直接使用颜色对应的英文单词,编写比较简单,例如:
    color : red;

具体颜色名参考 MDN 官方文档

2.2 表示方式二:rgb 或 rgba

  • 编写方式:使用 红、绿、蓝 这三种光的三原色进行组合。
  • r表示红色,g表示绿色,b表示蓝色,a表示透明度。
  • 举例:
/* 使用 0~255 之间的数字表示一种颜色 */
color: rgb(255, 0, 0);/* 红色 */
color:rgba(255, 0, 0, 0.5);/* 半透明的红色 */

/* 也可以使用百分比表示一种颜色(用的少) */
color: rgb(100%, 0%, 0%);/* 红色 */
color: rgba(100%, 0%, 0%,50%);/* 半透明的红色 */
  • 小规律:
    1. 若三种颜色值相同,呈现的是灰色,值越大,灰色越浅。
    2. rgb(0, 0, 0) 是黑色, rgb(255, 255,255) 是白色。
    3. 对于 rbga 来说,前三位的 rgb 形式要保持一致,要么都是 0~255 的数字,要么都是百分比 。

2.3 表示方式三:HEX 或 HEXA

HEX 的原理同与 rgb 一样,依然是通过:红、绿、蓝色 进行组合,只不过要用 6位(分成3组) 来表达,
格式为:# rrggbb

每一位数字的取值范围是: 0 ~ f ,即:( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c,d, e, f )
所以每一种光的最小值是: 00 ,最大值是: ff

  • 举例:
color: #ff0000;/* 红色 */

/* 如果每种颜色的两位都是相同的,就可以简写*/
color: #ff9988;/* 可简为:#f98 */

/* 但要注意前三位简写了,那么透明度就也要简写 */
color: #ff998866;/* 可简为:#f986 */

注意点: IE 浏览器不支持 HEXA ,但支持 HEX 。

2.4 表示方式四:HSL 或 HSLA

  • HSL 是通过:色相、饱和度、亮度,来表示一个颜色的,格式为: hsl(色相,饱和度,亮度)
    • 色相:取值范围是 0~360 度,具体度数对应的颜色如下图:
      在这里插入图片描述
    • 饱和度:取值范围是 0%~100% 。(向色相中对应颜色中添加灰色, 0% 全灰, 100% 没有灰)
    • 亮度:取值范围是 0%~100% 。( 0% 亮度没了,所以就是黑色。 100% 亮度太强,所以就是白色了)
  • HSLA 其实就是在 HSL 的基础上,添加了透明度。

3. CSS字体属性

3.1 字体大小

  • 属性名: font-size
  • 作用:控制字体的大小。
  • 语法:
div {
	font-size: 40px;
}
  • 注意点:
    1. Chrome 浏览器支持的最小文字为 12px ,默认的文字大小为 16px ,并且 0px 会自动消失。
    2. 不同浏览器默认的字体大小可能不一致,所以最好给一个明确的值,不要用默认大小。
    3. 通常以给 body 设置 font-size 属性,这样 body 中的其他元素就都可以继承了。
  • 借助控制台看样式:
    在这里插入图片描述
    ###3.2 字体族
  • 属性名: font-family
  • 作用:控制字体类型。
  • 语法:
div {
	font-family: "STCaiyun","Microsoft YaHei",sans-serif
}
  • 注意:
    1. 使用字体的英文名字兼容性会更好,具体的英文名可以自行查询,或在电脑的设置里去寻找。
    2. 如果字体名包含空格,必须使用引号包裹起来。
    3. 可以设置多个字体,按照从左到右的顺序逐个查找,找到就用,没有找到就使用后面的,且通常在最后写上 serif (衬线字体)或 sans-serif (非衬线字体)。
    4. windows 系统中,默认的字体就是微软雅黑。

3.3 字体风格

  • 属性名: font-style
  • 作用:控制字体是否为斜体。
  • 常用值:
    1. normal :正常(默认值)
    2. italic :斜体(使用字体自带的斜体效果)
    3. oblique :斜体(强制倾斜产生的斜体效果)

实现斜体时,更推荐使用 italic 。

  • 语法:
div {
	font-style: italic;
}

3.4 字体粗细

  • 属性名: font-weight
  • 作用:控制字体的粗细。
  • 常用值:
    • 关键词:
      1. lighter :细
      2. normal : 正常
      3. bold :粗
      4. bolder :很粗 (多数字体不支持)
    • 数值:
      1. 100~1000 且无单位,数值越大,字体越粗 (或一样粗,具体得看字体设计时的精确程度)。
      2. 100~300 等同于 lighter , 400~500 等同于 normal , 600 及以上等同于bold 。
  • 语法:
div {
	font-weight: bold;
}
div {
	font-weight: 600;
}

3.5 字体复合写法

  • 属性名: font ,可以把上述字体样式合并成一个属性。
  • 作用:将上述所有字体相关的属性复合在一起编写。
  • 编写规则:
    1. 字体大小、字体族必须都写上。
    2. 字体族必须是最后一位、字体大小必须是倒数第二位。
    3. 各个属性间用空格隔开。
  • 实际开发中更推荐复合写法,但这也不是绝对的,比如只想设置字体大小,那就直接用 font-size 属性。

4. CSS文本属性

4.1 文本颜色

  • 属性名: color
  • 作用:控制文字的颜色。
  • 可选值:
    1. 颜色名
    2. rgb 或 rgba
    3. HEX 或 HEXA (十六进制)
    4. HSL 或 HSLA

开发中常用的是: rgb/rgba 或 HEX/HEXA (十六进制)。

  • 举例:
div {
	color: rgb(112,45,78);
}

4.2 文本间距

  • 字母间距: letter-spacing
  • 单词间距: word-spacing (通过空格识别词)
  • 属性值为像素( px ),正值让间距增大,负值让间距缩小。

4.3 文本修饰

  • 属性名: text-decoration
  • 作用:控制文本的各种装饰线。
  • 可选值:
    1. none : 无装饰线(常用)
    2. underline :下划线(常用)
    3. overline : 上划线
    4. line-through : 删除线
  • 可搭配如下值使用:
    1. dotted :虚线
    2. wavy :波浪线
    3. 也可以指定颜色
  • 举例:
a {
	text-decoration: none;
}

4.4 文本缩进

  • 属性名: text-indent 。
  • 作用:控制文本首字母的缩进。
  • 属性值: css 中的长度单位,例如: px
  • 举例:
div {
	text-indent:40px;
}

后面我们会学习 css 中一些新的长度单位,目前我们只知道像素( px )。

4.5 文本对齐_水平

  • 属性名: text-align 。
  • 作用:控制文本的水平对齐方式。
  • 常用值:
    1. left :左对齐(默认值)
    2. right :右对齐
    3. center :居中对齐
  • 举例:
div {
	text-align:  center;
}

4.6 细说 font-size

  1. 由于字体设计原因,文字最终呈现的大小,并不一定与 font-size 的值一致,可能大,也可能小。

例如: font-size 设为 40px ,最终呈现的文字,可能比 40px 大,也可能比 40px小。

  1. 通常情况下,文字相对字体设计框,并不是垂直居中的,通常都靠下 一些。

4.7 行高

  • 属性名: line-height
  • 作用:控制一行文字的高度。
  • 可选值:
    1. normal :由浏览器根据文字大小决定的一个默认值。
    2. 像素( px )。
    3. 数字:参考自身 font-size 的倍数(很常用)。
    4. 百分比:参考自身 font-size 的百分比。
  • 备注:由于字体设计原因,文字在一行中,并不是绝对垂直居中,若一行中都是文字,不会太影响观感。
  • 举例:
div {
	line-height: 60px;
	line-height: 1.5;
	line-height: 150%;
}
  • 行高注意事项:

    1. line-height 过小会怎样?—— 文字产生重叠,且最小值是 0 ,不能为负数。
    2. line-height 是可以继承的,且为了能更好的呈现文字,最好写数值。
    3. line-height 和 height 是什么关系?
      • 设置了 height ,那么高度就是 height 的值。
      • 不设置 height 的时候,会根据 line-height 计算高度。
  • 应用场景:

    1. 对于多行文字:控制行与行之间的距离。
    2. 对于单行文字:让 height 等于 line-height ,可以实现文字垂直居中。

备注:由于字体设计原因,靠上述办法实现的居中,并不是绝对的垂直居中,但如果一行中都是文字,不会太影响观感。

4.8 文本对齐_垂直

    1. 顶部:无需任何属性,在垂直方向上,默认就是顶部对齐。
    1. 居中:对于单行文字,让 height = line-height 即可。

问题:多行文字垂直居中怎么办?—— 后面我们用定位去做。

    1. 底部:对于单行文字,目前一个临时的方式:
      让 line-height = ( height × 2 ) - font-size - x 。
      备注: x 是根据字体族,动态决定的一个值。

问题:垂直方向上的底部对齐,更好的解决办法是什么?—— 后面我们用定位去做。

4.9 vertical-align

  • 属性名: vertical-align 。
  • 作用:用于指定同一行元素之间,或 表格单元格 内文字的 垂直对齐方式。
  • 常用值:
    1. baseline (默认值):使元素的基线与父元素的基线对齐。
    2. top :使元素的顶部与其所在行的顶部对齐。
    3. middle :使元素的中部与父元素的基线加上父元素字母 x 的一半对齐。
    4. bottom :使元素的底部与其所在行的底部对齐。

特别注意: vertical-align 不能控制块元素。

5. CSS列表属性

列表相关的属性,可以作用在 ul 、 ol 、 li 元素上。
在这里插入图片描述

6. CSS表格属性

1. 边框相关属性(其他元素也能用):

在这里插入图片描述
注意:
1. 以上 4 个边框相关的属性,其他元素也可以用,这是我们第一次遇见它们。
2. 在后面的盒子模型中,会详细讲解边框相关的知识。

2. 表格独有属性(只有 table 标签才能使用):

在这里插入图片描述

以上 5 个属性,只有表格才能使用,即: table标签。

7. CSS背景属性

在这里插入图片描述

8. CSS鼠标属性

在这里插入图片描述
扩展:自定义鼠标图标:

/* 自定义鼠标光标 */
cursor: url("./arrow.png"),pointer;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/365870.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv8-Segment C++

YOLOv8-Segment C https://github.com/triple-Mu/YOLOv8-TensorRT 这张图像是运行yolov8-seg程序得到的结果图,首先是检测到了person、bus及skateboard(这个是检测错误,将鞋及其影子检测成了滑板,偶尔存在错误也属正常),然后用方…

Vue 环境准备

1.安装vscode https://code.visualstudio.com/ 2.安装开发vue所需插件: Vetur —— 语法高亮、智能感知、Emmet等 包含格式化功能, AltShiftF (格式化全文),CtrlK CtrlF(格式化选中 代码,两…

分库分表原则

分库分表原则 单表数据到达千万级别或者20存储空间 优化已经解决不了问题一 IO瓶颈导致性能问题 拆分策略 垂直分库 以表为依据,根据业务将不同的表拆分到不同库中,有点像微服务 垂直分表 以字段为依据,根据字段属性将不同字段拆分到不同…

App ICP备案获取iOS和Android的公钥和证书指纹

依照《工业和信息化部关于开展移动互联网应用程序备案工作的通知》,向iOS和安卓平台提交App时需要先提交ICP备案信息。 iOS平台: 1、下载appuploader工具:Appuploader home -- A tool improve ios develop efficiency such as submit ipa to…

Tencent Tinker:移动应用热修复的未来之路

Tencent Tinker:移动应用热修复的未来之路 1 引言 移动应用热修复是一项在移动应用开发领域中日益重要的技术,它可以帮助应用程序开发者快速修复线上应用的bug、漏洞和功能问题,而无需重新发布整个应用。这种能力对于提高用户体验、降低用户…

Pymysql将爬取到的信息存储到数据库中

爬取平台为电影天堂 获取到的数据仅为测试学习而用 爬取内容为电影名和电影的下载地址 创建表时需要建立三个字段即可 import urllib.request import re import pymysqldef film_exists(film_name, film_link):"""判断插入的数据是否已经存在""&qu…

Flink 1.18.1 部署与配置[CentOS7]

静态IP设置 # 修改网卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33# 修改文件内容 TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOstatic IPADDR192.168.18.128 NETMASK255.255.255.0 GATEWAY192.168.18.2 DEFROUTEyes IPV4_FAILURE_FATALno IPV6INIT…

在openfeign客户端如何获取到服务端抛出的准确异常信息?? openfeign调用(请求/响应)的各个大致过程

在openfeign客户端如何获取到服务端抛出的准确异常信息?? 相关参考背景引入浏览器直接访问Spring的Restful接口(最普遍、简单的访问)示例结论 openfeign客户端调用的情况调用过程示例场景之一(其他场景可类比&#xff…

数据结构与算法面试系列-03

1. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 程序代码 package com.jingxuan.system;public class Sphere {public static void main(String[] args) {double s = 0;double t = 100;for (int i…

vue2 组件注册

简单分享怎么将组件注册为全局组件,主要分为三部分: 一、使用 Vue.install 方法将自义定的组件挂载到 Vue 实例上,如下: 二、注册为全局组件,如下: 三、页面使用,如下:

Vue3+vite引入Tailwind CSS

Tailwind CSS 是一个为快速创建定制化 UI 组件而设计的实用型框架。与其他 CSS 框架或库不同,Tailwind CSS 组件没有预先设置好样式。可以使用 Tailwind 的低级实用类来为 CSS 元素设置样式,如 margin、flex、color 等。 自从 2017 年发布以来&#xff…

vue全家桶之路由管理Vue-Router

一、前端路由的发展历程 1.认识前端路由 路由其实是网络工程中的一个术语: 在架构一个网络时,非常重要的两个设备就是路由器和交换机。当然,目前在我们生活中路由器也是越来越被大家所熟知,因为我们生活中都会用到路由器&#…

用VScode写Latex

主要内容可以直接导到这里 A Fast Guide on Writing LaTeX with LaTeX Workshop in VS Code - Jia Jia Math 其中关于TexLive安装完成之后的路径设置有一些迷惑,win11下测试是不需要手动去添加的,去系统变量里检查一下就可以了,应该点开path…

nginx+nginx-rtmp-module+ffmpeg进行局域网推流rtmp\m3u8

局域网推流的简单方式 这里以ubuntu为例 一、先下载安装包 nginx、nginx-rtmp-module,再一起安装 # 下载nginx # 这里我安装的是 nginx-1.10.3 版本 cd /usr/software wget http://nginx.org/download/nginx-1.25.0.tar.gz tar -zxvf nginx-1.25.0.tar.gz# 下载ng…

2024美赛数学建模B题思路源码

赛题目的 赛题目的: 问题描述: 解题的关键: 问题一. 问题分析 要开发一个模型来预测潜水器随时间的位置,我们需要考虑以下几个关键因素: 海洋环境因素:当前和预测的洋流、海水密度(可能会随…

Java基础 集合(三)Queue详解

目录 简介 Queue接口 方法介绍 Deque 接口 LinkedList ArrayDeque AbstractQueue 抽象类 PriorityQueue 基础用法示例 前言-与正文无关 生活远不止眼前的苦劳与奔波,它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界中,我们往往…

企业申请sectigo ip https证书

Sectigo(原名Comodo,在整合https证书业务后改名为Sectigo)是一家知名的数字证书提供商,拥有多种类型的数字证书,例如单域名https证书、多域名https证书、通配符https证书、IP https证书和代码签名证书等满足各类用户的…

情人节精选礼物指南:五款必考虑情人节精选佳品

随着一年中最浪漫的节日——情人节的脚步越来越近,许多人可能正在纠结如何挑选一份独特的礼物来表达对另一半的爱意。一份精心挑选的礼物不仅能在这个特殊的日子里为对方带来惊喜,还能加深双方的情感联系。为了帮助那些还在犹豫不决的朋友们,…

RS485通信在钡铼技术的LoRa网关中的应用

在钡铼技术的LoRa网关中,RS485通信协议的应用是一个典型的示例,展现了如何将传统的工业通信技术与现代的物联网(IoT)解决方案相结合,以实现更加高效、可靠的数据传输和设备管理。RS485作为一种广泛使用的串行通信协议,因其稳定性高…

Pandas 数据结构 – Pandas CSV 文件

Pandas CSV 文件 CSV(Comma-Separated Values,逗号分隔值,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。 CSV 是一种通用的、…
最新文章