css样式表属性

文章目录

  • css样式表属性
    • color
    • background-color
    • font-size
    • font-weight
    • font-family
    • font-style
    • text-decoration
    • text-indent
    • line-height(line-height的概念)
    • width、height
    • letter-spacing
    • text-align
    • direction
    • writing-mode
    • font-variant
    • border-radius
    • opacity
    • cursor
    • vertical-align
    • min-width、max-width
    • overflow
    • margin
    • display
    • list-style
    • 盒子显示隐藏
    • 背景图
      • 使用属性
      • 背景图和背景颜色混用
      • background
    • outline
    • line-height的概念

css样式表属性

对于一个元素,浏览器本身是有一套默认的样式表的,如果服务器端没有指定,那么就是使用浏览器的样式设置;如果指定了,那么就使用服务器端指定的样式。浏览器的样式信息如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i7M3kMnI-1692416019900)(images/browserDefaultCSS.png)]

color

用于设置元素内部文字的颜色,颜色的设置方式:

  • 预设值:一些定义好的单词,每个单词都表征一种颜色。
  • 三原色:光学三原色(红、绿、蓝),每个原色可以使用0 - 255之间的数字来表示,一共三个原色,称之为色值。
    rgb表示法:
    rgb(0, 255, 0, 0.5) -- 顺序为红、绿、蓝、透明度,红绿蓝数字为0 - 255,透明度为0 - 1(可以为小数)hex表示法
    #000000            -- 顺序红绿蓝,用16进制表示数字0 - 255,这种好像不能表示透明度。
    淘宝红:#FF4400,当红绿蓝三个数的16进制十位与个位数都相同,那么可以进行缩写:#F40
    黑色:#000000,#000
    白色:#ff0000,#f00
    

background-color

背景颜色,用于设置元素的背景色

font-size

元素内部文字的大小;如果一个元素没有字体大小,那么他就继承父元素的字体大小;如果没有父元素(html),那么就使用基准字号,基准字号就是浏览器中设置的字号。

  • px:像素,简单的理解为文字的高度占多少个像素。
  • em:相对单位,相对于父元素的字体大小,也就是em值 * 父元素字体大小;他最终显示会计算为像素进行显示。

font-weight

文字粗细程度,可以取值数字,可以取值预设值。
这个数值不能乱设,和具体字体有关,如果设置不当就无效果,一般就是使用预设值normalbold

<p style="font-weight: normal">设置font-weight: normal</p>
<p style="font-weight: bold">设置font-weight: bold</p>

strong标签默认为粗体;

font-family

文字字体,font-family使用如下:

<p style="font-family: 华文楷体">设置font-family: 华文楷体</p>
<p style="font-family: 楷体">设置font-family: 楷体</p>

设置文字字体要正常显示要注意设置的字体要存在目标主机上,并且对应字体中存在响应的字符,不然浏览器忽略字体设置;
可以设置多个字体,这样浏览器会逐个检测字体是否存在,并且字符是否存在该字体中,如果存在就进行显示,否则跳过:

<p style="font-family: Consolas,华文楷体,sans-serif">设置font-family: Consolas,华文楷体,sans-serif</p>
<p style="font-family: AR PL UKai HK,Consolas,华文楷体,sans-serif">设置font-family: AR PL UKai HK,Consolas,华文楷体,sans-serif</p>
<p style="font-family: 'AR PL UKai HK',Consolas,华文楷体,sans-serif">设置font-family: 'AR PL UKai HK',Consolas,华文楷体,sans-serif</p>
<p style="font-family: 华文楷体">设置font-family: 华文楷体</p>
<p style="font-family: 楷体">设置font-family: 楷体</p>

最后加上一个sans-serif非衬线字体或者serif衬线字体;他们是字体的两个大类,并不是表示某个具体的字体,浏览器遇到该字体会自动选择该类字体中的一个字体进行显示。

font-style

字体样式,通常用于设置字体倾斜:

<p style="font-style: italic">设置font-style: italic</p>
<p style="font-style: normal">设置font-style: normal</p>

i、em元素默认为斜体;

text-decoration

文本修饰,给文本加线

<p style="text-decoration: line-through">设置text-decoration: line-through</p>
<p style="text-decoration: overline">设置text-decoration: overline</p>
<p style="text-decoration: underline">设置text-decoration: underline</p>
<p><a href="" style="text-decoration: none">链接去掉下划线</a></p>
<p><a href="">链接保留下划线</a></p>

a元素默认加下划线,del元素、s元素默认是line-through;

text-indent

indent – 缩进,text-indent表示文本缩进,也就是段落中第一行的缩进方式。

<p style="text-indent: 2em">链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线</p>

text-indent设置距离,可以为px,也可以为em,rem,一般使用2em,即首行缩进2个字符。

line-height(line-height的概念)

每行文本占据的高度,该值越大,每行文本的距离越大。

<p style="line-height: 2em">链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线链接保留下划线</p>

这个属性可以实现单行文本的垂直居中(垂直方向居中):

<p style="text-align: center; line-height: 5em; height: 5em; background: #008c8c; color: white;">链接保留下划线链接保留下划线链接保留下划线链接保留</p>

上面设置line-height: 5em; height: 5em;一样,就可以垂直居中(显示的时候文字默认是垂直居中显示),text-align: center;是水平居中。

line-height是具有继承性的,如果直接在某个元素上使用line-height,那么line-height: 1.5em;line-height: 1.5;line-height: 150%;三种写法是没有区别的,比如:

p{line-height: 1.5em;}
p{line-height: 1.5;}
p{line-height: 150%;}

最后p显示的段落行高效果是一样的,这三种方式的区别在于子元素继承时的方式,如:

.parent1{font-size:14px;line-height: 1.5em;background: #999;padding:10px
}
.parent2{font-size:14px;line-height: 1.5;background: #999;padding:10px
}
.parent3{font-size:14px;line-height: 150%;background: #999;padding:10px
}
.child{font-size:26px;background: #ccc;
}
  • line-height: 1.5em; 父元素经过计算后(1.5em * font-size),将得到的父元素行高继承到子元素
  • line-height: 1.5; 父元素直接将这个比例继承给子元素,然后子元素按照继承的这个比例去计算自己的行高
  • line-height: 150%;line-height: 1.5em;一样;
  • line-height: 20px; 直接将20px继承给子元素;

width、height

box盒子模型中的内容区宽度以及高度的设置,显示的时候整个元素占据的大小还会有内边距、边框和外边距这几个属性的参与。
如果文本数据内容数量在font-size的影响下超过了width、height设置的大小,那么整体上的排版依旧按照width、height进行排版,而文字输出也会进行输出,此时就是文字会越过设置的大小,如果此时对应的位置有排版内容,那就会出现文字覆盖的情况。

letter-spacing

文字间隙,就是文本水平方向的间隔

text-align

元素内部内容水平方向的排列方式,默认靠左排列;
这个和line-height一样,也会被子元素进行继承。

  • justify 除最后一行外,分散对齐,最后一行就是左对齐,也就是两端对齐;
    每一行都分散对齐可以使用::after添加一个width为100%的行块盒

direction

开始和结束时相对的,该属性设置的就是开始到结束的方向

writing-mode

font-variant

variant – 变体,可以设置字体变体:

border-radius

边框弧度

opacity

设置透明度,设置整个元素的透明度,取值范围0 ~ 1

cursor

设置鼠标样式,默认auto,让浏览器决定使用什么样式。
设置后移动到对应区域就会产生鼠标指针变化。
cursor可以设置ico资源:

cursor: url("images/test.ico"), auto;

注意此时:

  1. cursor: url后要加上auto
  2. 图片应为是32*32的ico格式

vertical-align

指定行内元素(inline)或表格单元格(table-cell)元素的垂直对齐方式。

  • baseline 默认方式,基线对齐基线,这种方式下,行内块元素中如果没有数据,直接设置宽高,那么行内块元素的底边就会处于基线位置,于是行内块会看着高出文字一段距离。
  • text-bottom 使元素的底部与父元素的字体底部对齐。

min-width、max-width

最小宽度与最大宽度,最小宽度是针对盒模型说的,浏览器是没有这个最小宽度的概念的,当浏览器伸缩为最小宽度,再缩小就会出现横向滚动条。

overflow

对于内容溢出的元素采取的显示方案

  • visible 默认方式,直接越界显示
  • auto 如果没有内容溢出,就不出现滚动条显示,如果内容溢出就出现滚动条显示。

margin

对于块盒,使用margin: auto;可以实现水平方向的居中,但是无法实现垂直方向的居中,理由如下:

auto的意义是自动填充剩余空间

块级元素,即便我们设置了宽度,他还是自己占一行,在css的规范中,元素他的左外边距+左边框宽度+左内边距+内容的宽度+右内边距+右边框+右外边距=包含块的宽度,如果我们给他的左右外边距设置为auto的时候,他会实现平分剩下的距离,从而达到一个水平居中的效果

但是块级元素的高度并不会自动扩充(可以在chrome中检查看到),所以他的外部尺寸是不自动充满父元素的,也没有剩余的空间,因此margin上下设置auto不能实现垂直居中‘

可以使用绝对定位进行垂直居中。

display

  • list-item 设置为该属性值的盒子,本质上仍然是一个块盒,但同时该盒子会附带另一个盒子
    元素本身生成的盒子叫做主盒,附带的盒子称为次盒子,次盒子和主盒子水平排列(最终的效果就是li元素的效果),以下属性可以发生继承。
    • list-style-type 设置次盒子中内容的类型
    • list-style-position 设置次盒子和主盒子的相对位置,默认outside。
    • list-style: none; 清空次盒子

list-style

设置有序列表和无序列表的前面序号的显示格式

  • list-style-type: decimal;
    设置为数字显示
  • list-style-position: inside;
    设置到内部显示

盒子显示隐藏

  1. display: none; 不生成盒子,此时可能会对排版造成影响。
  2. visibility: hidden; 生成盒子,只是视觉上移除盒子,盒子仍然占据空间。默认为visible。JS可以控制这个来实现闪烁效果;

背景图

img元素是属于HTML概念,背景图属于css概念;

  1. 当图片属于网页内容时,必须使用img元素
  2. 当图片仅用于美化页面时,必须使用背景图

使用属性

  1. background-image: url("images/test.png")
    设定背景图片,背景图默认情况下会在横坐标和纵坐标中进行重复

  2. background-repeat: no-repeat;
    设置是否重复

  3. background-size: ;

    • contain 图片完全显示在边框中,保持比例不变,可能会有一些空白
    • cover 图片撑满区域,保持比例不变,背景图可能会有一些丢失
    • auto 以背景图片的比例缩放背景图片。
    • 数值或百分比 直接设置背景图大小,可能会造成图片压缩或者伸展,参考img的width设置,设置了width,height应该也会进行相应的等比例调整
      • 只设置一个数值,此次数值设置为width,height为auto,如果设置两个,那么第二个参数为auto;
  4. background-position
    设置背景图的位置,默认左上

    • 预设值
    • 数值与百分比
      应用:雪碧图取图片:首先将需要的图片移动到显示区域左上角,然后设置长和宽。
  5. background-attachment
    通常用该属性表示图片是否固定。

    • fixed 固定背景图在视口上方
  6. background-clip
    设置元素的背景(背景图片或颜色)是否延伸到边框、内边距盒子、内容盒子下面。

    • border-box 背景延伸到边框
    • padding-box 背景延伸到内边距盒子
    • content-box 背景延伸到内容盒子
    • text 仅在文字下面显示背景,搭配color: transparent;有奇效。

背景图和背景颜色混用

可以混用,然后背景图没覆盖到的地方会由背景颜色填充

background

速写属性,background-*对应的值可以直接在background属性中;
由于background-position和background-size都会出现数字形式,写在一起会混乱,因此规定,写的时候先写位置,后写大小,而且使用/隔开。

outline

设置外边框(轮廓),与border的区别就在于外边框的宽度是不占用类似margin、padding的计算的。但是有个弊端就是他只能同时设置4个边,不能像border一样设置某条边。

outline-offset

当outline默认样式设置为auto时,该css属性无效(个人测试发现outline样式为auto时也有效),当设置了宽度,该属性意义为outline与border之间的间隔值(默认为0),可以为负数

line-height的概念

基本概念

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JG5kjjst-1692416019901)(images/word.png)]
上面这四条线,从上到下分别是顶线、中线、基线、底线,vertical-align属性中有top、middle、baseline、bottom;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6iftUtUF-1692416019901)(images/word_2.png)]

  • 行高(line-height)
    行高是指上下文本行的基线间的垂直距离,即图中两条红线间垂直距离。他包含了两个部分,一个是字体,一个是行距;
  • 行距
    行距是指一行底线到下一行顶线的垂直距离,即第一行粉线和第二行绿线间的垂直距离。
  • 半行距
    半行距是行距的一半,即区域3垂直距离/2,区域1,2,3,4的距离之和为行高,而区域1,2,4距离之和为字体size,所以半行距也可以这么算:(行高-字体size)/2

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构与算法】十大经典排序算法-归并排序

&#x1f31f;个人博客&#xff1a;www.hellocode.top &#x1f3f0;Java知识导航&#xff1a;Java-Navigate &#x1f525;CSDN&#xff1a;HelloCode. &#x1f31e;知乎&#xff1a;HelloCode &#x1f334;掘金&#xff1a;HelloCode ⚡如有问题&#xff0c;欢迎指正&#…

如何用输入函数为数组赋值

在编写程序时我们经常使用数组&#xff0c;而数组的大小可能是很大的但是我们并不需要为每个元素都自己赋值&#xff0c;我们可能会自定义输入数组元素个数&#xff0c;我们应该如何实现通过输入函数为数组赋值呢&#xff1f; 目录 第一种&#xff1a; 第二种&#xff1a; 第一…

大数据bug-sqoop(二:sqoop同步mysql数据到hive进行字段限制。)

一&#xff1a;sqoop脚本解析。 #&#xff01;/bin/sh mysqlHost$1 mysqlUserName$2 mysqlUserPass$3 mysqlDbName$4 sql$5 split$6 target$7 hiveDbName$8 hiveTbName$9 partFieldName${10} inputDate${11}echo ${mysqlHost} echo ${mysqlUserName} echo ${mysqlUserPass} ec…

OpenCV之remap的使用

OpenCV中使用remap实现图像的重映射。 重映射是指将图像中的某一像素值赋值到指定位置的操作&#xff1a;g(x,y) f ( h(x,y) )&#xff0c; 在这里&#xff0c; g( ) 是目标图像, f() 是源图像, 而h(x,y) 是作用于 (x,y) 的映射方法函数。为了完成映射过程, 需要获得一些插值为…

TypeError: a bytes-like object is required, not ‘str‘

raceback (most recent call last): File "D:\pycharmcode\client.py", line 12, in <module> tcp_socket.send(send_data) TypeError: a bytes-like object is required, not str 使用socket进行ubuntu与windows通信时&#xff0c;发送数据时报了以上错…

LeetCode 面试题 01.04. 回文排列

文章目录 一、题目二、C# 题解 一、题目 给定一个字符串&#xff0c;编写一个函数判定其是否为某个回文串的排列之一。 回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。 回文串不一定是字典当中的单词。 点击此处跳转题目。 示例1&#xff1a; 输入&…

CSS3:图片边框

简介 图片也可以作为边框&#xff0c;以下是实例演示 注意 实现该效果必须添加border样式&#xff0c;且必须位于border-image-socure之前否则不会生效 实例 <html lang"en"><head><style>p {width: 600px;margin: 200px auto;border: 30px soli…

maven工具-maven的使用-镜像仓库、本地仓、IDEA使用maven

Maven 一、为什么使用maven 添加第三方jar包jar包之间的依赖关系处理jar包之间的冲突获取第三方jar包将项目拆分成多个工程模块实现项目的分布式部署 二、maven简介 ​ Maven项目对象模型(POM)&#xff0c;可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的…

2023.8 - java - 对象和类

public class Dog {String breed;int size;String colour;int age;void eat() {}void run() {}void sleep(){}void name(){} } 一个类可以包含以下类型变量&#xff1a; 局部变量&#xff1a;在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方…

基于STM32标准库智能风扇设计

目录 一&#xff0c;前言 二&#xff0c;系统方案选择 三&#xff0c;实体展示 工程分类 四&#xff0c;相关代码 PWM.c PWM.h AD.c AD.h 电机驱动程序 舵机驱动 一&#xff0c;前言 当今生活中&#xff0c;风扇已成为人们解暑的重要工具&#xff0c;然而使用风扇缓解…

CentOS系统环境搭建(九)——centos系统下使用docker部署项目

centos系统环境搭建专栏&#x1f517;点击跳转 关于Docker-compose安装请看CentOS系统环境搭建&#xff08;三&#xff09;——Centos7安装Docker&Docker Compose&#xff0c;该文章同样收录于centos系统环境搭建专栏。 Centos7部署项目 采用前后端分离的形式部署。使用Do…

【Sklearn】基于随机梯度下降算法的数据分类预测(Excel可直接替换数据)

【Sklearn】基于随机梯度下降算法的数据分类预测(Excel可直接替换数据) 1.模型原理2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 随机梯度下降(Stochastic Gradient Descent,SGD)是一种优化算法,用于训练模型的参数以最小化损失函数。在分…

QT学习笔记-QT5.15编译及安装谷歌拼音输入法(QtInputMethod_GooglePinyin)

QT学习笔记-QT5.15编译及安装谷歌拼音输入法&#xff08;QtInputMethod_GooglePinyin&#xff09; 0、背景1、环境2、下载QtInputMethod_GooglePinyin源码3、使用MinGW64构建套件编译3.1 编译QtInputMethod_GooglePinyin源码3.2、部署tgtsmlInputContextPlugin输入法插件3.3、运…

Lombok注解在JSON化中,JSON生成额外生成字段问题

问题描述&#xff1a; 定义如下对象 Dataclass A{private String A;public String getC() {return "abab";}} 执行如下逻辑 Autowiredprivate ObjectMapper objectMapper;Testpublic void test4() throws Exception {A a new A();a.setA("a");System.ou…

分布式 - 服务器Nginx:一小时入门系列之负载均衡

文章目录 1. 负载均衡2. 负载均衡策略1. 轮询策略2. 最小连接策略3. IP 哈希策略4. 哈希策略5. 加权轮询策略 1. 负载均衡 跨多个应用程序实例的负载平衡是一种常用技术&#xff0c;用于优化资源利用率、最大化吞吐量、减少延迟和确保容错配置。‎使用 nginx 作为非常有效的HT…

【MySQL】如何使用Shared-memory协议(Windows)连接MySQL数据库

文章目录 【MySQL】如何使用Shared-memory协议(Windows)连接MySQL数据库连接MySQL的协议使用Shared-memory协议(Windows)连接MySQL步骤1&#xff1a;确认MySQL服务器已启用Shared-memory连接启动Shared-memory连接方法 步骤2&#xff1a;客户端使用shared-memory连接MySQL服务器…

神经网络基础-神经网络补充概念-55-为什么是ML策略

“ML策略”&#xff08;Machine Learning Strategies&#xff09;是指在解决机器学习问题时&#xff0c;采取的一系列方法、技巧和策略。选择适当的ML策略对于获得高质量的模型和结果非常重要。以下是为什么要考虑ML策略的一些原因&#xff1a; 问题适应性&#xff1a;不同的机…

2023 最新版网络安全保姆级指南,从 0 基础进阶网络攻防工程师

一、网络安全学习的误区 1.不要试图以编程为基础去学习网络安全 不要以编程为基础再开始学习网络安全&#xff0c;一般来说&#xff0c;学习编程不但学习周期长&#xff0c;且过渡到网络安全用到编程的用到的编程的关键点不多。一般人如果想要把编程学好再开始学习网络安全往…

Vue实例生命周期中的所有钩子函数

在 Vue 3 中&#xff0c;实例生命周期的钩子函数被整合为了两个主要的阶段&#xff1a;Composition API 阶段和 Options API 阶段。下面是 Vue 3 中的所有生命周期钩子函数&#xff1a; Composition API 阶段&#xff1a; setup //在组件实例创建之前执行&#xff0c;用于设…

centos 之安装 openssl 1.1.1报错

源码make时报错&#xff0c;可能是系统的perl的版本太低问题。 [rootlocalhost ~]# cpan -a | grep Test::More Test::More 0.92 1.302171 EXODIST/Test-Simple-1.302171.tar.gz [rootlocalhost ~]# cpan -a | grep Text::Template [rootlocalhost ~]# …