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.rhkb.cn/news/257020.html

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

相关文章

《金融人工智能:用python实现ai量化交易》

融合了数学、python、深度学习以及金融知识&#xff0c;是本推荐的好书。请收藏本文&#xff0c;读后再给大学总结。

解密 ARMS 持续剖析:如何用一个全新视角洞察应用的性能瓶颈?

作者&#xff1a;饶子昊、杨龙 应用复杂度提升&#xff0c;根因定位困难重重 随着软件技术发展迭代&#xff0c;很多企业软件系统也逐步从单体应用向云原生微服务架构演进&#xff0c;一方面让应用实现高并发、易扩展、开发敏捷度高等效果&#xff0c;但另外一方面也让软件应…

剑指offer——二进制中1的个数

目录 1. 题目描述2. 可能引起死循环的想法3. 改进后的代码4. 给面试官惊喜的代码 1. 题目描述 请实现一个函数&#xff0c;输入一个整数&#xff0c;输出该数二进制表示中1的个数。例如把9表示成二进制位1001&#xff0c;有2位是1&#xff0c;因此如果输入9&#xff0c;该函数输…

idea: 无法创建Java Class文件(SpringBoot)已解决

第一&#xff1a;点击file-->project Sructure... 第二步&#xff1a;点击Moudules 选择自己需要创建java的文件夹&#xff08;我这里选择的是main&#xff09;右键点击Sources&#xff0c;然后点击OK即可 然后就可以创建java类了

Java+SpringBoot实习管理系统探秘

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

Vue学习笔记(三)常用指令、生命周期

Vue学习笔记&#xff08;三&#xff09;常用指令 vue指令&#xff1a;html标签上带有 v- 前缀的特殊属性&#xff0c;不同的指令具有不同的含义&#xff0c;可以实现不同的功能。 常用指令&#xff1a; 指令作用v-for列表渲染&#xff0c;遍历容器的元素或者对象的属性v-bind…

MIT-Missing Semester_Topic 3:Editors (Vim) 练习题

文章目录 练习一练习二练习三练习四练习五练习六练习七练习八 本 Topic 的 MIT 讲解网页&#xff08;练习题未给解答&#xff09; 练习一 自行完成 vimtutor。vimtutor 是 Vim 本身附带的一个入门教程&#xff0c;在 shell 中直接输入 vimtutor 便能运行。注意该教程在 8024 大…

书生·浦语大模型第四课作业

基础作业&#xff1a; 构建数据集&#xff0c;使用 XTuner 微调 InternLM-Chat-7B 模型, 让模型学习到它是你的智能小助手&#xff0c;效果如下图所示&#xff0c;本作业训练出来的模型的输出需要将不要葱姜蒜大佬替换成自己名字或昵称&#xff01; 1.安装 # 如果你是在 Int…

三、案例 - MySQL数据迁移至ClickHouse

MySQL数据迁移至ClickHouse 一、生成测试数据表和数据1.在MySQL创建数据表和数据2.在ClickHouse创建数据表 二、生成模板文件1.模板文件内容2.模板文件参数详解2.1 全局设置2.2 数据读取&#xff08;Reader&#xff09;2.3 数据写入&#xff08;Writer&#xff09;2.4 性能设置…

【每日一题】牛客网——链表的回文结构

✨专栏&#xff1a;《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &#x1f64f;小杨水平有限&#xff0c;欢迎各位大佬指点&#xff0c;相互学习…

【JavaEE进阶】 图书管理系统开发日记——陆

文章目录 &#x1f38b;前言&#x1f343;删除图书&#x1f6a9;约定前后端交互接口&#x1f6a9;完善前端代码&#x1f6a9;接口测试 &#x1f38d;批量删除&#x1f6a9;约定前后端交互接口&#x1f6a9;实现后端服务器代码&#x1f388;控制层&#x1f388;业务层&#x1f3…

查看系统进程信息的Tasklist命令

Tasklist命令是一个用来显示运行在本地计算机上所有进程的命令行工具&#xff0c;带有多个执行参数。另外&#xff0c;Tasklist可以代替Tlist工具。通过任务管理器&#xff0c;可以查看到本机完整的进程列表&#xff0c;而且可以通过手工定制进程列表方式获得更多进程信息&…

Vue源码系列讲解——模板编译篇【二】(整体运行流程)

目录 1. 整体流程 2. 回到源码 3. 总结 1. 整体流程 上篇文章中我们说了&#xff0c;在模板解析阶段主要做的工作是把用户在<template></template>标签内写的模板使用正则等方式解析成抽象语法树&#xff08;AST&#xff09;。而这一阶段在源码中对应解析器&…

港口码头航吊远距离相位测距仪|传感器PHR-120100配置使用说明

港口码头航吊远距离相位测距仪|传感器PHR-120100广泛应用于港口码头、航车、位移监测、形变监测、钢铁、堆垛机、龙门吊等领域。 本文重点介绍港口码头航吊远距离相位测距仪|传感器PHR-120100配置使用说明。 一、布局介绍 二、按键介绍 三、指示灯说明 四、显示屏操作说明 …

Git中Idea操作git及Git Flow

目录 一、Idea中使用Git 1.idea配置Git和Gitee 2.实践操作 1.将本地项目推送到远程 2.从远程库克隆项目到本地 二、Git Flow 1.什么是Git Flow 2.工作流程 3.实践操作 一、Idea中使用Git 1.idea配置Git和Gitee 第一步&#xff1a;设置git.exe的安装路径 在设置中的…

蓝牙BLE学习-安全

1.基本概念 蓝牙标准规定了5种基本的安全服务 身份验证:根据通信设备的蓝牙地址验证其身份。蓝牙不提供本地用户身份验证。保密性:确保只有授权的设备才能访问和查看传输的数据&#xff0c;防止窃听造成的信息泄露。授权(Authorization):在允许设备使用某项服务之前&#xff…

深度测评:ONLYOFFICE 桌面编辑器 v8.0新功能

目录 前言 一、PDF表单处理&#xff1a;提升办公效率 二、RTL&#xff08;从右到左&#xff09;支持&#xff1a;满足不同语言习惯 三、Moodle集成&#xff1a;教育行业的新助力 四、本地界面主题&#xff1a;个性化办公体验 五、性能优化与稳定性提升 六、性能与稳定性…

C++ Qt框架开发 | 基于Qt框架开发实时成绩显示排序系统(3) 保存表格数据

对上两篇篇的工作C Qt框架开发| 基于Qt框架开发实时成绩显示排序系统&#xff08;1&#xff09;-CSDN博客和C Qt框架开发 | 基于Qt框架开发实时成绩显示排序系统&#xff08;2&#xff09;折线图显示-CSDN博客继续优化&#xff0c;增加一个保存按钮&#xff0c;用于保存成绩数据…

不可错过!10款超赞实用插件框架

Cocos 游戏开发十八般武器&#xff0c;尽在 Cocos Store 今天给大家分享10款实用插件与框架&#xff01; 1. 快闪-Tab标签王(prefab标签栏) 作者&#xff1a;嘉年华&#xff08;gameWs&#xff09; 《快闪-标签王》插件&#xff0c;解决了日常开发过程中&#xff0c;经常需要通…

一、Docker部署MySQL

Docker部署MySQL 一、安装Docker二、拉取MySQL镜像1.选择拉取版本2.拉取镜像 三、启动MySQL1.确定好挂载目录2.启动3.查看是否启动4.开启远程访问权限 一、安装Docker 安装教程&#xff1a;https://qingsi.blog.csdn.net/article/details/131270071 二、拉取MySQL镜像 1.选择…