CSS学习记录(基础笔记)

CSS简介:

CSS 指的是层叠样式表* (Cascading Style Sheets),主要用于设置HTML页面的文字内容(字体、大小、对齐方式),图片的外形(边框)

CSS 描述了如何在屏幕、纸张或其他媒体上显示 HTML 元素

CSS 节省了大量工作。它可以同时控制多张网页的布局,其中外部样式表存储在 CSS 文件中。

2、想要在web端显示实时预览的画面,而海康提供的demo是用GUI 组件去解码视频流数据来显示;并且客服说只能提供IE和旧版chrome浏览器的解码插件;这不符合预期,那么接下来是使用ffmpeg【ffmpeg的安装、环境变量配置及基本使用】对海康视频流rtsp流进行转换,并以rtmp协议的流数据返回给前端,前端通过video.js来展示。

3、在浏览器和服务器之间进行数据交换时,常用的方式是通过JSON(JavaScript Object Notation)进行数据的序列化和反序列化。以下是一般的数据交换流程:

在浏览器端(前端),使用JavaScript将数据对象转换为JSON字符串。可以使用JSON.stringify()方法进行转换。

将JSON字符串通过HTTP请求发送到服务器端。

在服务器端,通过相应的框架或库(如Node.js中的Express框架)接收到请求后,将接收到的JSON字符串转换为服务器可处理的数据格式,如对象或数组。可以使用框架或库提供的方法来解析JSON字符串,如JSON.parse()函数。

服务器端进行相应的处理,可能是对数据进行存储、处理或其他操作。

服务器将处理完的数据转换为JSON字符串。

将JSON字符串作为响应发送回浏览器端。

在浏览器端,通过JavaScript将接收到的JSON字符串转换为相应的数据对象,以便在页面上进行显示或其他操作。

在这个过程中,JSON提供了一种通用的数据格式,它具有简洁明了、易于理解和解析的特点,能够方便地在浏览器和服务器之间进行数据交换。

4、CSS语法规范:

主要由选择器和一条或者多条声明组成。选择器是用于指定CSS样式的HTML标签。花括号内是对该对象设置的具体样式,以键值对的形式出现。选择器分为两大类:基础选择器和复合选择器。基础选择器主要由标签选择器,类选择器,id选择器,通配符选择器组成。

标签选择器:直接使用HTML标签作为选择器,按标签名称进行分类,直接对某一类的标签指定样式。可以快速为页面同类型的标签设置样式。

类选择器:在HTML中以class属性表示,在CSS中以.显示,用于单独选一个或者某几个标签。.后面跟的类名可以用-来连接,不要用纯数字、中文来命名。一个标签可以有多个类名,从而有更多的样式,两个类名之间用空格来分隔。当一些标签具有共同的样式时,可以将其单独放在一个类里面,这些标签再分别调用这个公共的类,减少代码的冗余度。

id选择器:为标有特定id的HTML元素指定特定的样式。以id属性来设置id选择器,CSS中设置#来定义样式。注意,id属性只能在每一个HTML文档里出现一次。

通配符选择器:以*来进行定义,表示选取页面中的所有元素,不需要专门进行调用,自动给元素使用样式。

5、CSS字体属性,用于定义字体系列,大小,粗细,文字样式。

设置字体:font-family

字体大小:font-size,单位是px

字体粗细:font-weight:normal/bolder/400等同于normal,700等同于bolder

文字样式:font-style:是否是斜体italic/normal

文字颜色:color:三种形式:预定义的颜色值:red,blue,yellow等。十六进制:以#号键开头,如#fff表示6个f,#e4f表示#ee44ff。RGB代码:rgb(255,0,0)

对齐文本:text-align:left/right/center

装饰文本:text-decoration:none/underline/overline/line-through(穿线而过)

文本缩进:text-indent:2em:首行缩进2个字符。em是一个相对单位,即当前元素1个文字的大小。

文本行高:line-height:用于设置行间的距离,可以控制文字行和行之间的距离。包括了上间距、下间距、文本本身的高度。

6、CSS的三种样式表:行内样式表、内部样式表、外部样式表。

内部样式表:写到HTML内部,即<head></head>里的<style></style>里

外部样式表:开发中最常用。适用于样式比较多的情况,样式单独写在CSS文件里,再将CSS文件引入到HTML页面中去使用。

<link rel=”stylesheet” href=”CSS文件的路径”

行内样式表:直接写到具体的某一个标签里,用<style></style>括起来。

7、Emmet语法:快速生成HTML结构的语法。

生成标签:div+Tab

生成多个相同的标签:div*3+Tab

父子级关系的标签:ul>li+Tab

兄弟级关系的标签:div+p+Tab

p.bin:生成带有类名为bin的p标签

如果生成的div类是有顺序的,可以用自增符号$

8、CSS的复合选择器:

在CSS中,复合选择器是由基本选择器组合形成的。包括了后代选择器,子选择器,并集选择器,伪类选择器。

后代选择器:选择父元素里边的子元素,中间用空格来进行分隔。元素1 元素2 {样式声明}

子选择器:选择作为某元素的最近一级子元素。元素1>元素2(样式声明)

选择元素1里的所有直接后代元素2

并集选择器:可以选择多组标签,为它们定义相同的样式,用逗号连接。

元素1,元素2 {样式声明}

伪类选择器:给某一些选择器添加特殊的效果,给链接添加特殊效果,或选择第一个。

链接伪类选择器:a:link{}未点击时呈现的样式,a:visited{}访问后呈现的样式。a:hover{}鼠标悬停时的样式。a:active:{}选择活动的链接,就是鼠标点击了这个链接但还没松开。

实际开发中一般要按这个顺序来进行设置,即LVHA.

用的最多的是:a{}设置链接的样式,a:hover{}设置悬停的时候的样式。

Focus伪类选择器:用于获得焦点的表单元素。焦点即光标。

Input:focus{background-color:yellow}

9、CSS的元素显示模式:即标签以什么方式来进行显示,比如<div></div>分为块元素和行内元素。

块元素:<h1>到h6,<p>,<div>,<ul>、<ol>、<li>

特点:独占一行、高度,宽度内外边距可以控制,宽度是默认父级宽度,是一个容器,里边可以放其他行内或者块元素。

注意:文字类元素不能使用块元素,比如p标签里不能使用div标签,还有h1和h6标签。

行内元素:<a><strong><em><i><del>,<span>是最典型的行内元素。

特点:一行可以显示多个。不能设置宽和高,默认宽度即本身内容的宽度,行内元素只能容纳文本或者其他行内元素。链接里不能放其他链接。但是可以放块状元素。

行内块元素:<img>、<input>、<td>同时具有块元素和行内元素的特点,可以一行占多个,默认宽度是本身内容的宽度。宽度和行高外边距和内边距都可以控制。

10、单行文字垂直居中的原理:

将行高和文字高度设置成一样的即可。当行高小于文字高度时,文字会偏上。当行高大于文字高度时,文字会偏下。

11、CSS的背景:

背景颜色:bgc+Tab:默认是transparent透明

背景图片:常用于某些logo或者一些装饰性的小图片。优点是便于控制位置。

Bgi+Tab

背景平铺:bgr+Tab:repeat/no-repeat/repeat-x(沿x轴进行平铺)/repeat-y(沿y轴进行平铺)

背景图片位置:bgp+Tab:x y。参数可以填方位名词或者精确的像素值。top/bottom/left/right/center,先是水平方向,再是垂直方向。

注意:如果指定的两个值都是方位名词,则两个值的前后顺序无关。

如果只指定了一个方位名词,另一个值省略,第二个值默认居中对齐。

当参数是精确单位时,第一个是x坐标,第二个是y坐标。

背景图像固定:bga+Tab:scroll.背景图像是随对象内容滚动。Fixed是背景图像固定。

背景色半透明:background:rgba(0,0,0,0.3)分别是红绿蓝三色的值加一个透明度,介于0-1之间。

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

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

相关文章

从SQL注入绕过最新安全狗WAF中学习fuzz

前言 SQL注入并不是很精通&#xff0c;通过实战绕过WAF来进行加强SQL注入能力&#xff0c;希望对正在学习的师傅能有一丝帮助。 安装 安装前言 我是本地搭建的环境进行测试的 环境是windows11phpstudy2018sqli-labs phpstudy的安装我不再复述&#xff0c;这里简单说一下安全…

vue3数组V-for中动态生成$refs

vue3数组V-for中动态生成$refs 在项目实际需求中&#xff0c;可能会遇到使用数组动态生成$refs,根据官方参考&#xff0c;采用了以下方式实现 <template><div class"content"><ul v-for"(item, index) in editableTabs" :key"item.n…

SolidUI社区-从开源社区角度思考苹果下架多款ChatGPT应用

文章目录 背景下架背景下架原因趋势SolidUI社区的未来规划结语如果成为贡献者 背景 随着文本生成图像的语言模型兴起&#xff0c;SolidUI想帮人们快速构建可视化工具&#xff0c;可视化内容包括2D,3D,3D场景&#xff0c;从而快速构三维数据演示场景。SolidUI 是一个创新的项目…

斯坦福大学提出在类别层级对多零件多关节三维拼装新方法

来源&#xff1a;投稿 作者&#xff1a;橡皮 编辑&#xff1a;学姐 paper&#xff1a;https://arxiv.org/pdf/2303.06163.pdf 背景&#xff1a; 形状装配通过排列一组简单或基本的零件几何图形来组成复杂的形状几何图形。许多重要的任务和应用都依赖于形状装配算法。 计算机…

你是否好奇交流充电桩主板的安装维度?

你是否好奇交流充电桩主板的安装维度?安装环境、要求和方式&#xff0c;将影响充电桩的可靠性和安全性。 交流充电桩主板的安装环境至关重要&#xff0c;设备需要安装在室外&#xff0c;因此应选择防水、防火、耐候、耐腐蚀的材料。同时&#xff0c;安装要求具有良好的接地&am…

企业人力资源管理系统servlet+jsp人事招聘培训薪资java源代码mysql

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 企业人力资源管理系统servletjsp 系统1权限&#xff…

uniApp 插件 Fvv-UniSerialPort 使用实例

接上一篇 uniApp 对接安卓平板刷卡器, 读取串口数据 , 本文将详细介绍如何使用插件读取到串口数据 原理 通过uniApp 插件读取设备串口数据, 解析后供业务使用; 步骤 创建uniApp 项目;添加插件 安卓串口通信 Fvv-UniSerialPort 安卓串口通信 Fvv-UniSerialPort - DCloud 插件…

刷题笔记 day6

力扣 57 和为s的两个整数 class Solution { public:vector<int> twoSum(vector<int>& nums, int target) {vector<int> v;int i 0 , j nums.size()-1;while(i < j){if(nums[i] nums[j] > target){--j;}else if(nums[i] nums[j] < target){i…

【Linux】内核线程创建 kthread_run 函数和内核中断

kthread_run函数详解 以PCIE的热插拔内核线程创建为例说明 注意&#xff1a;内核线程和RTOS的线程略有不同&#xff0c;这里Linux上创建以后直接运行&#xff0c;RTOS上有的是需要加入到调度队列中后才会执行&#xff0c;比如RT-Thread的系统 kthread_run 是 Linux 内核中的…

Mac端口扫描工具

端口扫描工具 Mac内置了一个网络工具 网络使用工具 按住 Command 空格 然后搜索 “网络实用工具” 或 “Network Utility” 即可 域名/ip转换Lookup ping功能 端口扫描 https://zhhll.icu/2022/Mac/端口扫描工具/ 本文由 mdnice 多平台发布

关于win11 debian wsl 子系统安装启动docker一直starting,无法启动

首先我先说明&#xff0c;我的步骤都是按照官网步骤来的 通过官网的操作步骤 通过测试命令 sudo docker run hello-world得到下面的命令&#xff0c;我们通过启动命令 sudo service docker start 执行结果如下图 也就是说无法启动&#xff0c;一直显示在启动中 遇到这种情况…

基于ARM+FPGA的驱控一体机器人控制器设计

目前市场上工业机器人&#xff0c;数控机床等多轴运动控制系统普遍采用运动控制器加 伺服驱动器的分布式控制方式。在这种控制方式中&#xff0c;控制器一方面完成人机交互&#xff0c;另 一方面进行 NC 代码的解释执行&#xff0c;插补运算&#xff0c;继而将计算出来的位…

Go项目实现日志按时间及文件大小切割并压缩

关于日志的一些问题: 单个文件过大会影响写入效率&#xff0c;所以会做拆分&#xff0c;但是到多大拆分? 最多保留几个日志文件&#xff1f;最多保留多少天&#xff0c;要不要做压缩处理&#xff1f; 一般都使用 lumberjack[1]这个库完成上述这些操作 lumberjack //info文件wr…

Java版工程行业管理系统源码-专业的工程管理软件-em提供一站式服务 em

​ Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下&#xff1a; 首页 工作台&#xff1a;待办工作、消息通知、预警信息&#xff0c;点击可进入相应的列表 项目进度图表&#xff1a;选择&#xff08;总体或单个&#xff09;项目…

弱监督语义分割伪标签可视化(把单通道灰度图转为voc格式语义分割标签的彩色形式)

一、目的 以图片2007_001960为例&#xff0c;voc数据集中的原图和对应的语义分割标签分别如下&#xff1a; 图1 图2 图像级标签WSSS任务第一阶段最后生成的pseudo mask如下&#xff1a; 图3 我们的…

【雕爷学编程】MicroPython动手做(33)——物联网之天气预报3

天气&#xff08;自然现象&#xff09; 是指某一个地区距离地表较近的大气层在短时间内的具体状态。而天气现象则是指发生在大气中的各种自然现象&#xff0c;即某瞬时内大气中各种气象要素&#xff08;如气温、气压、湿度、风、云、雾、雨、闪、雪、霜、雷、雹、霾等&#xff…

react中PureComponent的理解与使用

一、作用 它是一个纯组件&#xff0c;会做一个数据的浅比较&#xff0c;当props和state没改变的时候&#xff0c;不会render重新渲染&#xff0c; 改变后才会render重新渲染&#xff0c;提高性能。 二、使用 三、注意 它不能和shouldComponentUpdate生命周期同时使用。因为它…

如何获取最新的底图边线数据(高德)

由于近期的大屏项目需要地图的边界线的数据&#xff0c;找了很多方式&#xff0c;都有局限性&#xff0c;就是不能保证是最新的&#xff0c;所以使用高德地图提供的边线数据&#xff0c;那就肯定是最新的了&#xff0c;之前仔细看文档&#xff0c;现在仔细看了&#xff0c;才发…

【云原生】k8s中Contrainer 生命周期回调/策略/指针学习

个人主页&#xff1a;征服bug-CSDN博客 kubernetes专栏&#xff1a;kubernetes_征服bug的博客-CSDN博客 目录 1 容器生命周期 2 容器生命周期回调/事件/钩子 3 容器重启策略 4 自定义容器启动命令 5 容器探针 1 容器生命周期 Kubernetes 会跟踪 Pod 中每个容器的状态&am…

Python 批量处理JSON文件,替换某个值

Python 批量处理JSON文件&#xff0c;替换某个值 直接上代码&#xff0c;替换key TranCode的值 New 为 Update。输出 cancel忽略 import json import os import iopath D:\\Asics\\850\\202307 # old path2 D:\\test2 # new dirs os.listdir(path) num_flag 0 for file…