CSS介绍

本章目标:
  1. CSS概述

  2. 三种样式表

  3. 简单选择器

  4. 复合选择器

  5. 盒子模型

  6. 常用背景样式

  7. 浮动

  8. 常用文本样式

  9. 伪类样式

  10. 列表样式

  11. 表格样式

  12. 定位

一、CSS概述:
  1. CSS:cascading style sheets-层叠样式表

  2. 专门负责对网页的美化

二、有三种使用方式(可以单用,可以混用)
  • 页面head标签中添加style标签,标签里专门写css代码(推荐)

  • 在HTML标签style属性里书写。所有HTML标签都支持,并且优先级最高

  • 通过head标签中添加link标签来引入外部css文件

根据css书写的位置

  • 内部样式表:在head标记书写一对style标记,在style标记中书写css代码,

  • 外部样式表:专门建立一个css文件,在css文件中书写css代码

    image-20220523104650405

需要在html文件的head标记中如下引用:

优点:可以在不同文件中多次引用,提高代码的复用性

  • 内嵌样式表:

三种样式表如果共存,样式冲突的情况下,遵循的是就近原则。内嵌样式表优先级最高,内部和外部要看哪一个在后,哪一个优先级就高

三、简单选择器:

三种选择器

 选择器语法: 选择器{   Css属性:css属性值;…….. }
  1. ID选择器:如果多个标记的样式各不一样,可以考虑使用ID选择器,一个选择器永远只能修饰一个标记

    #id属性值{Css属性:css属性值;……..}
  2. 标签选择器:标签名称相同的多个标记如果样式相同,可以考虑使用标签选择器。

    标签名称{   Css属性:css属性值;……..}
  3. 类选择器:非常灵活,如果标签名称不同的多个标记如果样式一样,可以考虑使用类选择器。如果多个标签的样式各不一样,页可以考虑使用类选择器。

    .自定义名称{     Css属性:css属性值;……..}<标记 class=”自定义名称”>……

三种选择器的优先级:ID》类》标

四、复合选择器
element.classp.intro选择 class=”intro” 的所有元素。
element,elementdiv, p选择所有元素和所有元素。
[element element]div p选择元素内的所有元素。
[element>element]div > p选择父元素是的所有元素。
[[attribute]][target]选择带有 target 属性的所有元素。
[[attribute=value][target=_blank]选择带有 target=”_blank” 属性的所有元素。
[[attribute^=value]]a[href^=”https”]选择其 src 属性值以 “https” 开头的每个 元素。
[[attribute$=value]]a[href$=”.pdf”]选择其 src 属性以 “.pdf” 结尾的所有 元素。
五、盒子模型

1.什么是盒子模型

同样,网页是由很多模块构成,这些模块可以看成是一个个盒子,每个模块里还分为几部分,每部分都可以看成一个小盒子,而我们把这些大大小小的盒子就叫做盒模型。

  • 元素内容

  • 填充(内边距)

  • 边框

  • 外边距

2.盒子模型由哪些属性构成的呢?

img

上面就是一个标准盒模型:

在CSS中,一个独立的盒子模型由网页内容(content)、边框(border)、内边距(padding)、外边距(margin)四个 部分组成,如下所示

  • content:代表内容区域,指存放内容的空间,文本也可以是其他的盒子

  • padding:内边距,盒子内部的空间,相当于生活中快递盒子里面的泡沫

  • border:盒子的边框,四条边框可以分别设置样式。

  • margin:盒子与盒子之间的间距(兄弟关系、父子关系)

  1. 标准盒模型的尺寸

    标准盒子模型总尺寸=border+padding+margin+内容区域

  2. 盒模型相关css属性

    大部分块级标记充当容器的角色,我们把容器想象为一个盒子,css中称为盒子模型,对于盒子模型,有一些相关的css属性如下:

    border:边框线粗细 线型 颜色 border-style: solid;/线型/ border-color: blue;/颜色/ border-width: 10px;/粗细/ border-bottom-color: blue; border-bottom-style: solid; border-bottom-width: 3px; Border -left Border -right Border -top Border -bottom border-radius:边框线弧度 Margin:边距 (上 右 下 左|上下 左右|上 左右 下) Margin-left Margin-right Margin-top Margin-bottom Padding:填充距离 (上 右 下 左|上下 左右|上 左右 下|上下左右) Padding -left Padding -right Padding -top Padding –bottom Width:宽度 Height:高度 外边距注意事项: Margin: 父子标记之间:子标记距离父标记之间的距离,对于子标记来说叫外边距 兄弟标记之间:标记之间的距离,外边距 如果父标记没有border,那么子标记的上下外边距将作用到父标记上 如果父标记有Border,就会作用到子标记上 Padding:标记的内容距离标记边框之间的距离,内容也可能是其他的标记 父子标记之间:子标记距离父标记之间的距离,对于父标记来说叫填充距离 盒模型的尺寸:内容区域+填充距离(内边距)+边框+外边距 box-sizing: content-box|border-box; content-box:我们设置的宽度或者高度仅仅指内容区域 border-box:设置的宽度或者高度包含了内容区域+填充距离(内边距)+边框线 border-radius:边框线的弧度,就是四个角所构成的圆形的半径

    /*    border-radius: 10px  20px 30px 40px;*/box-shadow: -10px 30px 20px gray;/量 *盒子阴影:水平方向偏移量  垂直方向的偏移  模糊边缘的距离 阴影的颜色*/
六、浮动

float:left|right,脱离文档流。 解决块级元素由垂直变为水平分布的问题 clear:left|both 清除浮动效果

#left{                width: 300px;                border: 1px solid black;                height: 500px;                float: left;/*浮动*/            
}            
#middle{                width: 594px;                height: 500px;                border: 1px solid black;                float: left;            
}           
#right{                width: 300px;                height: 500px;                border:  1px solid black;                float: left;            
}
七、背景样式

Background-color:背景色

Background-image:背景图片

background-repeat:no-repeat ;/背景的平铺方式/

background-size:1200px 200px ;背景大小

background-position: center;背景位置

height: 200px;
border: 1px solid black;
/*background-color: papayawhip;*//*背景色*/
background-image: url(img/banner.jpg);
background-repeat: no-repeat;/*平铺方式 repeat-x|repeat-y|no-repeat*/
background-size: 50px 50px;/*背景尺寸:宽  高*/
background-position: center bottom;/*背景图片的位置:left|center|right|left top|left bottom|center top|center bottom|right top|right bottom*/
八、文本样式

Color:字体颜色

Font-size:字体大小

Font-family:字体类型

Font-weight:字体粗细(100~900 |bold(700))

Text-decoration:文字的修饰线 :underline|overline|line-through|none

text-align:left|center|right

line-height:行高

#bannaer a{    color: white;    font-size: 16px;/*字体大小*/    font-weight:bold ;/*字体粗细:100-900,bold(700)*/    font-family:"黑体" ;/*字体*/    text-decoration: none;/*underline|overline|line-through*/}
#bottom{    height: 50px;    border: 1px solid black;    /*float: left;*//*div浮动之后,宽度变为自适应内容*/    clear: left;/*清除浮动效果*/    width: 1200px;    background-color: ghostwhite;    text-align: center;/*只针对容器中的文本或者行内标记*/    line-height: 50px ;/*行高:行高设置成和div的高度一致,可以实现垂直居中*/
}
九、伪类
  1. 伪类定义

    伪类 是添加到选择器的关键字,指定要选择的元素的特殊状态

    可以让一个标记在不同的浏览器动作下呈现出不同的样式

  2. 伪类名称(前四个重点)

    link:伪类名称,表示超链接未被访问的时候

    hover:鼠标悬停的时候

    active:鼠标处于激活状态的时候

    visited:链接被访问过后

    after:标签内容之后插入内容

    before:标签内容之后插入内容

  3. 伪类语法

    选择器:伪类{

    }

  4. 伪类实例

    p:after

    {

    content:”台词:-“;

    background-color:yellow;

    color:red;

    font-weight:bold;

    }

    p:before

    {

    content:”台词:-“;

    background-color:yellow;

    color:red;

    font-weight:bold;

    }

十、列表样式

list-style-type:项目符合的类型

list-style-image:设置小图标

#left ul{    list-style-type: none;    list-style-image:url(img/1.gif) ;   width: 160px;
}
十一、表格样式

Border-spacing:表单单元格间距

Border-collapse:collapse(合并)|seperate(默认,不合并) 边框线合并

vertical-align:垂直居中 top|middle|bottom

#middle table{    width: 300px;    height: 300px;    margin: 0px auto;    border: 1px solid blue;   border-collapse: separate;/*设置表格边框线重叠*/    border-spacing: 10px;/*表格单元格的间距*/}
#middle table td{    border: 1px solid blue;    text-align: center;    vertical-align: top;/*针对单元格设置垂直居中*/    padding: 20px;
}
十二、定位

定位相关css属性:

position:relative|absolute

相对定位:相对于自身的默认位置的偏移,配合left top right bottom使用

绝对定位:脱离文档流,如果父标记设置过绝对定位或者相对定位,指在父标记中的绝对位置,如果父标记没有设置,在网页中的绝对位置,配合left top right bottom使用

应用场景:在局部内容中实现重叠效果,可以考虑使用相对或者绝对定位

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

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

相关文章

SpringBoot与虚拟线程,接口吞吐量成倍增加,太爽了!

我们看一下如何在spring-boot中利用loom虚拟线程。 我们将做一些负载测试&#xff0c;看看虚拟线程和普通线程的响应时间如何。 让我们快速设置我们的 Spring Boot 项目。 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http:/…

【开源图床】使用Typora+PicGo+Gitee搭建个人博客图床

准备工作&#xff1a; 首先电脑得提前完成安装如下&#xff1a; 1. nodejs环境(node ,npm):【安装指南】nodejs下载、安装与配置详细教程 2. Picgo:【安装指南】图床神器之Picgo下载、安装与配置详细教程 3. Typora:【安装指南】markdown神器之Typora下载、安装与无限使用详细教…

JavaScript中如何判断数据类型

在JavaScript中&#xff0c;判断数据类型是我们在日常开发中经常会遇到的问题。正确地判断数据类型不仅有助于我们编写出更加健壮的代码&#xff0c;还可以提高程序的可读性和可维护性。本文将为大家介绍几种判断数据类型的方法 使用typeof运算符&#xff1a; typeof运算符可以…

[NSSRound#17 Basic]WEB

1.真签到 看robots.txt 密码先base32再base64得到md5加密的密文&#xff0c;在线解得到密码为Nss hint用16进制转字符串&#xff0c;提示新生赛遇到过 是一个敲击码加密 账号是ctfer,登录之后源码提示在F111n4l.php 要求nss参数若比较等于732339662&#xff0c;但是不能是数…

关于idea无法检测出lombok,导致代码爆红的处理

为啥需要本地安装lombok插件&#xff1f; 编译错误提示&#xff1a;Lombok 使用注解来自动生成代码&#xff0c;这些代码在编译时会由 Lombok 插件进行处理。如果没有安装 Lombok 插件&#xff0c;IDEA 在编译过程中可能会报告错误&#xff0c;因为它无法识别并处理 Lombok 注解…

【RL】Bellman Optimality Equation(贝尔曼最优等式)

Lecture3: Optimal Policy and Bellman Optimality Equation Definition of optimal policy state value可以被用来去评估policy的好坏&#xff0c;如果&#xff1a; v π 1 ( s ) ≥ v π 2 ( s ) for all s ∈ S v_{\pi_1}(s) \ge v_{\pi_2}(s) \;\;\;\;\; \text{for all…

Python数据科学:Scikit-Learn机器学习

4.1Scikit-Learn机器学习 Scikit-Learn使用的数据表示&#xff1a;二维网格数据表 实例1&#xff1a;通过Seaborn导入数据 def skLearn():scikit Learn基本介绍:return:import seaborn as sns#导入Iris数据集#注&#xff1a;一般网络访问不了iris sns.load_dataset(iris)ir…

助眠神器小程序源码|白噪音|小睡眠|微信小程序前后端开源

安装要求和说明后端程序运行环境&#xff1a;NginxPHP7.4MySQL5.6 PHP程序扩展安装&#xff1a;sg11 网站运行目录设置为&#xff1a;public 伪静态规则选择&#xff1a;thinkphp 数据库修改文件路径&#xff1a;/config/database.php需要配置后端的小程序配置文件&#xff0c;…

[word] word分割线在哪里设置 #其他#经验分享

word分割线在哪里设置 在工作中有些技巧&#xff0c;可以快速提高工作效率&#xff0c;解决大部分工作&#xff0c;今天给大家分享word分割线在哪里设置的小技能&#xff0c;希望可以帮助到你。 1、快速输入分割线 输入三个【_】按下回车就是一条长直线&#xff0c;同样分别…

webgis后端安卓系统部署攻略,超详细Termux攻略

目录 前言 一、将后端项目编译ARM64 二、安卓手机安装termux 1.更换为国内源 2.安装ssh远程访问 3.安装文件远程访问 三、安装postgis数据库 1.安装数据库 2.数据库配置 3.数据导入 四、后端项目部署 五、自启动设置 总结 前言 因为之前一直做的H5APP开发&#xf…

webpack面试解析

参考&#xff1a; 上一篇webpack相关的系列&#xff1a;webpack深入学习&#xff0c;搭建和优化react项目 爪哇教育字节面试官解析webpack-路白 1、Webpack中的module是什么&#xff1f; 通常来讲&#xff0c;一个 module 模块就是指一个文件中导出的内容&#xff0c;webpack…

Amber-Leedcode-Java - 代码随想录打卡第38 - 39天-动态规划汇总

本质上感觉是一个相加的问题&#xff0c;状态的转换&#xff0c;由前一种状态推至下一种状态509. 斐波那契数 较为简单 746. 使用最小花费爬楼梯 62. 不同路径 一开始写的时候被吓到了&#xff0c;但是发现听完一半之后再写还是比较容易的 对于我而言主要是找到逻辑&#xf…

Vue3+Ant-Design-Vue:报错Cannot read properties of null (reading ‘isCE‘)

问题描述 在使用Ant-Design-Vue内置的Table表格组件&#xff0c;实现expand展开行功能时&#xff0c;报错&#xff1a;Uncaught TypeError: Cannot read properties of null (reading ‘isCE‘) 。 报错信息图示&#xff1a; 在GitHub上找到如下描述&#xff0c; 解决方案 网上…

【漏洞复现】和为顺IP-COM WiFi未授权下载漏洞

Nx01 产品简介 深圳市和为顺网络技术有限公司是一家聚焦于商用级网络通信设备的研发与应用&#xff0c;为全球中小型企业提供高速、安全、易维护的网络设备产品和解决方案的公司。 Nx02 漏洞描述 深圳市和为顺网络技术有限公司IP-COM WiFi方案解决专家存在任意文件下载漏洞&am…

springsecurity6使用

spring security 中的类 &#xff1a; AuthenticationManager : 实现类&#xff1a;ProviderManager 管理很多的 provider &#xff0c;&#xff0c;&#xff0c; 经常使用的&#xff0c;DaoAuthenticationProvider , 这个要设置一个 UserDetailService , 查找数据库&#xff…

分享88个CSS3特效,总有一款适合您

分享88个CSS3特效&#xff0c;总有一款适合您 88个CSS3特效下载链接&#xff1a;https://pan.baidu.com/s/1pDAyFESnO8HSnCZj4-DOzQ?pwd8888 提取码&#xff1a;8888 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不…

第13章 网络 Page724 asio定时器

程序代码&#xff1a; 11行&#xff0c;声明一个ios对象 13行&#xff0c;使用ios对象作为参数声明一个定时器&#xff0c;此时&#xff0c;定时器和ios完成了关联&#xff0c;后面定时器如果有任务的话&#xff0c;就可以将任务交给ios 16行&#xff0c;为定时器设置一个定…

【日常聊聊】新年新征程:迎接学习的挑战

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;日常聊聊 ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 结语 我的其他博客 前言 随着新的一年的到来&#xff0c;程序员们站在了全新的起点。这是一个充满机遇和挑战的时刻&#xff0…

【JavaEE】_HTTP请求与响应

目录 1. HTTP协议 1.1 HTTP简介 1.2 Fiddler 2. HTTP请求 2.1 首行 2.2 请求头&#xff08;header&#xff09; 2.3 空行 2.4 正文&#xff08;body&#xff09; 3. HTTP响应 3.1 首行 3.2 响应头&#xff08;header&#xff09; 3.3 空行 3.4 正文&#xff08;bo…

51单片机编程基础(C语言):LED点阵屏

点阵屏介绍 类似于数码管&#xff0c;要用到肉眼视觉效应。扫描&#xff0c;才能把每一个LED都能选中&#xff0c;从而显示我们想要的图形&#xff0c;否则&#xff0c; 只能一次点亮一个LED&#xff0c; LED使用 51单片机点阵屏电路图&#xff1a; 实际连接顺序如下图&#…