【JavaEE】_CSS常用属性

目录

1. 字体属性

1.1 设置字体家族 font-family

1.2 设置字体大小 font-size

1.3 设置字体粗细 font-weight

1.4 设置字体倾斜 font-style

2. 文本属性

2.1 设置文本颜色 color

2.2 文本对齐 text-align

2.3 文本装饰 text-decoration

2.4 文本缩进 text-indent

2.5 行高 line-height

3. 背景属性

3.1 背景颜色 background-color

3.2 背景图片 background-image

3.2.1 背景图片平铺设置:background-repeat

3.2.2 背景图片位置设置:background-position

3.2.3 背景图片大小:background-size

4. 圆角矩形

4.2 生成圆角矩形

4.3 生成圆形

5. 元素的显示模式

5.1 块级元素 display:block

5.2 行内元素 display:inline

5.3 块级元素和行内元素的区别

6. CSS盒子模型

6.1 边框

6.2 内边距

6.3 外边距

7. 弹性布局

7.1 开启弹性布局 display

7.2 设置元素的水平排列方式 justify-content

7.3 设置元素的垂直排列方式 align-items


1. 字体属性

1.1 设置字体家族 font-family

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{font-size: 25px;font-family: '微软雅黑';}.two{font-size:25px;font-family:'宋体';}.three{font-size: 25px;font-family: '黑体';}.four{font-size: 25px;font-family: '华文行楷';}</style>
</head>
<body><div class="one">这是第一个div</div><div class="two">这是第二个div</div><div class="three">这是第三个div</div><div class="four">这是第四个div</div>
</body>
</html>

运行后页面如下:

注:(1)font-family属性指定的字体要求必须是系统已经安装的字体,上文代码所使用的微软雅黑、宋体、黑体、华文行楷都是windows系统自带的字体,故而直接指定字体是可以正确显示的。

如果需要指定一些特殊字体,系统上没有则不能正确显示。

这种情况一般是需要通过浏览器请求对应的服务器,获取到指定字体文件才能进行设置(一般网站都使用系统自带字体);

1.2 设置字体大小 font-size

示例代码同上,此处不再赘述;

注:(1)浏览器中的每个文字可视为一个方框,英文与拉丁文的方框可能比较窄,中文的方框一般是正方形,可以将设置字体大小视为设置字体方框的高

(2)如果需要使用截图工具(如QQ截图、微信截图等)进行大概手动测量,注意设置浏览器缩放与显示器缩放为100%,否则可能会测量与设置不符;

1.3 设置字体粗细 font-weight

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one2{font-size: 25px;font-family: '微软雅黑';}.one{font-size: 25px;font-family: '微软雅黑';font-weight: bold;}</style>
</head>
<body><div class="one2">这是第一个div</div><div class="one">这是第一个div</div></body>
</html>

运行后页面如下:

注:(1)字体粗细的设置,参考mdn文档,有:

截图链接:font-weight - CSS:层叠样式表 | MDN (mozilla.org)

(2)字体也可以通过设置字体粗细实现标题效果,html很多标签都可以通过cs实现;

1.4 设置字体倾斜 font-style

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one2{font-size: 25px;font-family: '微软雅黑';}.one{font-size: 25px;font-family: '微软雅黑';font-style: italic;}</style>
</head>
<body><div class="one2">这是第一个div</div><div class="one">这是第一个div</div>
</body>
</html>

运行后页面如图:

2. 文本属性

2.1 设置文本颜色 color

计算机表示颜色方式:

(1)RGB:现实中很多颜色都是由红绿蓝三原色混合而成的,而计算机也可采用RGB三色调和表示颜色,计算机给RGB各分配一个字节,每个字节的范围时0~255(00~FF)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{font-size: 25px;font-family: "微软雅黑";color:rgb(255,0,0);}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

如上文rgb(255,0,0)表示red分量设置为最大值,green、blue分量均设置为0;

注:当三各颜色分量均设置为255最大值时,将会呈现白色;

当三个颜色分量均设置为0时,将会呈现黑色;

(2)在前端中,每个分量都使用一个字节来表示,范围0~255或0~0xff,其中每两个十六进制数表示一各颜色分量,如:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/* .one{font-size: 25px;font-family: "微软雅黑";color:rgb(255,0,0);} */.two{font-size: 25px;font-family: "微软雅黑";color:#ff0000;}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

表示红色分量设置为最大值,蓝色和绿色分量均设置为0,故而最终字体为红色;

注:16进制表示数字可以缩写,如果每个分量的两个十六进制数字都相同,就可以把6位16进制数字缩写成3位十六进制,如表示纯红色,既可以写为#f0000,也可以写为#f00;

(3)直接使用颜色单词表示,如red,blue,green等;

2.2 文本对齐 text-align

text-align属性可设置为left靠左对齐,center居中对齐,right靠右对齐等:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{font-size: 25px;font-family: "微软雅黑";color:rgb(255,0,0);text-align: center;}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

运行后页面如下:

2.3 文本装饰 text-decoration

常用取值为:

underline:下划线;

none:可用于给a标签去下划线;

overline:上划线;

line-through:删除线;

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>a{text-decoration: none;}</style>
</head>
<body><div><a href="#">链接1</a></div>
</body>
</html>

运行后页面如下:

2.4 文本缩进 text-indent

text-indent有两种取值表示方式:
第一种:像素表示法,根据字体大小自行计算缩进值,如字体大小为20px,则缩进两格可以标识为:text-indent:20px;

但是这种方法不仅要自行根据字体大小计算缩进尺寸,并且当字体大小变化时,缩进尺寸还需另行计算并随之更改,表示绝对,故而并不常用;

第二种:em表示法,em是一个相对量,是以文字尺寸为基础来进行设置的,如果文字大小是25px,则1em=25px,2em=50px;

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{text-indent: 2em;}</style>
</head>
<body><div class="one">这是一个div</div><div>这是第二个div</div>
</body>
</html>

运行后页面如图:

注:(1)文本缩进的取值可以为负数,负数表示往左缩进:

2.5 行高 line-height

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><style>.one{font-size: 25px;font-family: "微软雅黑";color:rgb(255,0,0);text-align: left;text-decoration: line-through;text-indent: 2em;line-height: 45px;}</style>
</head>
<body><div class="one">这是一个div</div><div class="one">这是第二个div</div>
</body>
</html>

运行后页面如图:

此时字体大小25px,行高45px,即行间距20px;

3. 背景属性

3.1 背景颜色 background-color

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{font-size:25px;color:brown;font-family:"微软雅黑";background-color:cadetblue;}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

运行后页面如图:

3.2 背景图片 background-image

通过background-image:url(图片名称)设置图片背景;

3.2.1 背景图片平铺设置:background-repeat

当引入背景图片后,默认情况下图片是平铺的,可以使用background-repeat:no-repeat来取消平铺,仅为单个照片,图片出现在左上角。

3.2.2 背景图片位置设置:background-position

设置方法1:

使用top、center、bottom等方位词设置图片位置,

如:background-position:center center令图片水平居中,垂直居中,

backgroun-position:top center令图片水平居中,垂直在上;

设置方法2:

使用像素进行左表设置图片位置;

注意计算机中的坐标系是原点在左上角,y轴正方向竖直向下,x轴正方向水平向右的左手坐标系;

3.2.3 背景图片大小:background-size

设置方法1:

像素设置:手动指定背景图片的长和高;

设置方法2:

contain:令图片尽可能大地展示,但图片须全图展示;

cover:令图片完全覆盖背景区域,背景图像的某些部分可能无法展示在背景定位区域中;

注:在background属性的加持下,任何一个元素都可以用来显示图片,而且提供的功能比image标签更强大;

4. 圆角矩形

HTML元素默认都是一个个矩形,但有时候需要表示带有圆角的矩形;

使用border-radius:进行像素设置来指定矩形角的内切圆半径值

4.2 生成圆角矩形

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{width: 200px;height:100px;background-color: orange;color:#fff;text-align:center;line-height:100px;border-radius: 10px;/* 表示矩形角的内切圆半径为10px */}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

运行后页面如下:

注:当设置的内切圆半径为矩形高度的一半,就会有以下胶囊型形状:

4.3 生成圆形

当原矩形为正方形时,再将矩形角内切圆半径设置为边长的一半,就可以生成圆形:

    <style>.one{width: 150px;height:150px;background-color: orange;color:#fff;text-align:center;line-height:150px;border-radius: 75px;/* 表示矩形角的内切圆半径为10px */}</style>

运行后页面如下:

5. 元素的显示模式

5.1 块级元素 display:block

常见的块级元素有:

h1 - h6
p
div
ul
ol
li
...

5.2 行内元素 display:inline

常见的行内元素有: 

a
strong
b
em
i
del
s
ins
u
span
...

5.3 块级元素和行内元素的区别

(1)块级元素独占一行,行内元素不独占一行;

(2)块级元素高度、宽度、内外边距都可以设置;

        行内元素的高度、宽度、行、高均无效,内边距有效,外边距有时有效有时无效;

(3)块级元素默认宽度和父元素一样宽,行内元素默认宽度和连内容一样宽;

(一般将行内元素转成块级元素)

6. CSS盒子模型

任何一个HTML块级元素都是一个矩形盒子:

从内到外分别为:内容content、内边距padding、边框border、外边距margin

通过设置这几内边距、边框、外边距这几个属性,就可以控制元素之间、元素和内容之间的相对位置了;

6.1 边框

(1)border属性直接设置了四个方向,

还可以使用border-left、border-right、border-top、border-bottom分别设置四个方向;

(2)设置边框要设置三个方面:

①、边框的粗细;

②、边框的颜色;

③、边框的风格(实线solid、虚线dashed、点线dotted...);

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: center;line-height: 100px;border:5px chocolate solid;}</style>
</head>
<body><div class="one">这是一个div</div>
</body>
</html>

运行后页面如下:

注:(2)width和height表示的是内容的尺寸,加上边框后,内容尺寸没有变化,但边框会撑大盒子;

(2)大多数情况下都不希望因为边框撑大盒子,因为会影响该元素与其他元素的相对位置,可以使用一些专用属性防止盒子被撑大:

    <style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: center;line-height: 100px;border:5px chocolate solid;box-sizing: border-box;}</style>

将box-sizing属性设置为border-box就可以避免边框撑大盒子,即该情况下的边框是向内增加边框;

6.2 内边距

内边距设置的是内容与边框之间的距离

以文字左对齐为例,可以通过设置padding-left指定内容与边框的距离:

    <style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: left;line-height: 100px;border:5px chocolate solid;box-sizing: border-box;padding-left: 10px;}</style>

使用网页的开发者工具查看布局可以看出padding内边距被设置为10px: 

注:(1)如果要设置四个方向的内边距,可以使用padding:npx进行设置;

(2)padding:10px 表示四个方向内边距均为10px;

        padding:10px 20px 表示上下内边距是10px,左右内边距是20px;

        padding:10px 20px 30px 40px 将上右下左(顺时针)四个内边距依次设置为10px,20px,30px,40px;

6.3 外边距

外边距设置的是元素和元素之间的距离;

试查看以下代码的运行页面:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: left;line-height: 100px;border:5px chocolate solid;box-sizing: border-box;padding-left: 10px;}.two{width:200px;height:100px;background-color:grey;}</style>
</head>
<body><div class="one">这是一个div</div><div class="two">这是第二个div</div>
</body>
</html>

其运行页面如下: 

可见,当没有设置外边距margin时,两个div之间没有间距,此时可以使用对第一个div元素下外边距设置5像素:

    <style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: left;line-height: 100px;border:5px chocolate solid;box-sizing: border-box;padding-left: 10px;margin-bottom: 5px;}.two{width:200px;height:100px;background-color:grey;}</style>

运行后页面如下:

注:(1)同理padding,margin也可以分别对上下左右进行设置;

(2)margin-left和margin-right可以设置为auto,即令浏览器自动调节,此时该元素就可以在父元素内部居中放置

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.one{width:200px;height:100px;background-color: orange;color:white;text-align: left;line-height: 100px;border:5px chocolate solid;box-sizing: border-box;/* padding-left: 10px; */margin-bottom: 5px;}.three{width:50px;height: 50px;background-color: brown;margin-left: auto;margin-right:auto;}</style>
</head>
<body><div class="one"><div class="three"></div></div>
</body>
</html>

此时就可以实现元素的居中:

但是垂直方向设置为auto不能实现垂直反向的居中效果;

7. 弹性布局

弹性布局是用于实现页面布局的,即控制某个指定元素放到某个指定位置;

试运行以下代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div{width:100%;height:150px;background-color:darksalmon;}div>span{background-color:lightslategrey;width: 100px;   /* 行内元素宽度设置无效 */}</style>
</head>
<body><div><span>1</span><span>2</span><span>3</span></div>
</body>
</html>

运行后页面如下:

行内元素虽然是在水平上排列的,但由于其尺寸、边距等均不太可控,并不适合进行水平布局;

(行内块元素和行内元素一样,会把源码中的换行当做一个空格,也会对页面元素布局产生不必要的影响),使用弹性布局是更合适的;

7.1 开启弹性布局 display

开启弹性布局:display:flex; 给要水平排列的元素的父元素设置flex:

    <style>div{width:100%;height:150px;background-color:darksalmon;display: flex;}div>span{background-color:lightslategrey;width: 100px;   /* 行内元素宽度设置无效 */}</style>

运行后页面如下:

此时弹性容器内的元素不再是“块级”“行内”元素,而成为弹性元素,遵守弹性布局,可以设置尺寸和边距了;

7.2 设置元素的水平排列方式 justify-content

justify-content:flex-start;  表示靠左排列;

justify-content:flex-end;   表示靠右排列;

justify-content:flex-center;    表示居中排列;

除此之外,还有可将justify-content设置为space-between,即每个元素左右两侧都有等间距空白,实线元素在水平方向的等间距排列;

7.3 设置元素的垂直排列方式 align-items

align-items:flex-start;   表示靠顶排列;

align-items:flex-end;   表示靠底排列;

align-items:center;  表示居中排列;

试运行以下代码:
 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div{width:100%;height:150px;background-color:darksalmon;display: flex;justify-content: flex-start;align-items: center;}div>span{background-color:lightslategrey;width: 100px;height:100px;}</style>
</head>
<body><div><span>1</span><span>2</span><span>3</span></div>
</body>
</html>

运行后页面如图:

可见span1、2、3在水平方向实现了靠左排列,在垂直方向实现了居中排列;

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

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

相关文章

Go+:一种简单而强大的编程语言

Go是一种简单而强大的编程语言&#xff0c;它是在Go语言之上构建的&#xff0c;旨在提供更加强大、灵活和易于使用的编程体验。Go与Go语言共享大部分语法和语义&#xff0c;因此Go开发人员可以很快上手Go&#xff0c;同时也可以使用Go来编写更加简洁和高效的代码。在本文中&…

【c语言】字符串常见函数 上

&#x1f388;个人主页&#xff1a;甜美的江 &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;c语言 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进步&a…

Unity3d Shader篇(四)— Phong顶点高光反射着色器

文章目录 前言一、Phong顶点高光反射着色器是什么&#xff1f;1. Phong顶点高光反射着色器的工作原理2. Phong顶点高光反射着色器的优缺点优点缺点 二、使用步骤1. Shader 属性定义2. SubShader 设置3. 渲染 Pass4. 定义结构体和顶点着色器函数5. 片元着色器函数 三、效果四、总…

99.网游逆向分析与插件开发-网络通信封包解析-数据包组织与发送过程逆向分析

内容参考于&#xff1a;易道云信息技术研究院VIP课 上一个内容&#xff1a;定位明文发送数据的关键函数 首先来到下图位置&#xff0c;查看edi的值是怎样来的 然后使用高亮模式查看edi&#xff0c;看看谁给edi赋过值 首先是下图红框位置&#xff0c;mov ecx, edi也就是edi是一…

读千脑智能笔记12_阻止人类灭绝

1. 阻止人类灭绝 1.1. 宇宙中唯一知道这些的物体&#xff0c;唯一知道宇宙存在的物体&#xff0c;是我们的大脑 1.2. 如果没有关于某个事物的知识&#xff0c;我们能说这个事物就一定存在吗&#xff1f; 1.2.1. 我们的大脑扮演着这样一个独特的角色&#xff0c;这很令人着迷…

网络安全检查表

《网络攻击检查表》 1.应用安全漏洞 2.弱口令&#xff0c;默认口令 3.服务器互联网暴露 4.操作系统&#xff0c;中间件安全漏洞 5.研发服务器&#xff0c;邮件服务器等安全检查

《软件方法》强化自测题-杂项题目解析01

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 杂项&#xff08;1&#xff09; 3 [ 单选题 ] 《软件方法》第1章“建模和UML”开头所引用的歌曲&#xff0c;其词曲作者还写过下列歌曲中的&#xff1a; A) 爱江山更爱美人&#…

2024.2.3 作业

1、实现单向循环链表的头插头删尾插尾删 #include<stdio.h> #include<string.h> #include<stdlib.h> typedef int datatype; typedef struct node {//数据域int data;//指针域struct node *next; }*Linklist; Linklist create() {Linklist s(Linklist)mallo…

【项目日记(九)】项目整体测试,优化以及缺陷分析

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:项目日记-高并发内存池⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你做项目   &#x1f51d;&#x1f51d; 开发环境: Visual Studio 2022 项目日…

米贸搜|Facebook在购物季使用的Meta广告投放流程

一、账户简化 当广告系列开始投放后&#xff0c;每个广告组都会经历一个初始的“机器学习阶段”。简化账户架构可以帮助AI系统更快获得广告主所需的成效。例如&#xff1a; 每周转化次数超过50次的广告组&#xff0c;其单次购物费用要低28%&#xff1b;成功结束机器学习阶段的…

代码随想录day20--二叉树的应用8

LeetCode669.修剪二叉搜索树 题目描述&#xff1a; 给你二叉搜索树的根节点 root &#xff0c;同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树&#xff0c;使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即&#xff0c;如果没…

红队笔记Day2 -->上线不出网机器

今天就来讲一下在企业攻防中如何上线不出网的机器&#xff01;&#xff01; 1.基本网络拓扑 基本的网络拓扑就是这样 以下是对应得的P信息&#xff0c;其中的52网段充当一个内网的网段&#xff0c;而111充当公网网段 先ping一下&#xff0c;确保外网ping不通内网&#xff0c;内…