首页 > 其他分享 >CSS基础

CSS基础

时间:2024-07-12 15:54:54浏览次数:15  
标签:伪类 元素 基础 display nth 选择器 CSS

CSS基础

CSS的使用

        <!-- 行内样式 在元素内部 style=“”-->
        
        <!-- 内部样式在head里面 -->
        <style>
        .box {
           display: block; 
        }
    	</style>
    	
        <!-- 外部样式建立外部文件
            <link rel="stylesheet" herf="xxx.css">
        -->
        

三种样式优先级 :行内 > 内部 = 外部

盒子模型

  • 块级元素 display:block 举例 div ul li h p
    特征:独占一行,对宽度、高度、对齐方式等支持
  • 内联级元素display:inline 举例 a span
    特征:不独占一行,对宽度、高度、对齐方式等不支持
  • 内联块级元素 display:inline-block 举例 img input table
    特征:不独占一行,对宽度、高度、对齐方式等支持
  • 弹性盒子模型
    特征:弹性盒子内子元素默认横着布局,子元素高度一致 display:flex

盒子内部结构:由内到外分别是内容、填充、边框、外边距

  • 内容区:width、height默认是对内容区起作用
  • 填充区:padding 可以放四个值,以上为开始顺时针旋转
  • 边框区:border 复合属性 border-style边框的样式,border-width边框的宽度,border-color边框的颜色,solid 实线
  • 外边距区:margin : auto 元素居中,横向

配套属性:
box-sizing:content-box(内容区) border-box(盒子大小的计算:内容 填充 边框)

额外补充
浏览器中对中西文字换行规则:

  • 中文可以在任意处换行

  • 英文默认空格和-处换行

  • 如果想改变换行规则 使用 word-break:break-all 默认keep-all(保持单词完整性)

CSS选择器

基本元素(8种),伪元素选择器,伪类选择器三大类

基本选择器

1、元素选择器 E{} 例如:body{},*元素选择器中的特例 {margin:0;padding:0}
2、属性选择器 E[atter]{} E是元素名称,atter是属性(可以细化atter的值 ^= 前缀,$= 后缀,
= 包含,= 严格等于)例如id,选中带有atter的E标签
3、id选择器 #id值{}
4、class选择器 .class值{}
5、包含选择器 selector1 selector2 …{}
6、子元素选择器 selector1>selector2>…{}
7、兄弟元素选择器 selector1~selector2{} 从selector1向下查找selector2的兄弟元素(具有共同的父级元素)
8、选择器的组合 selector1,selector2,…{}

伪元素选择器

1.首字符伪元素选择器 ::first-letter{} 使用前提:依附元素是块级元素,如果不是可以变成块display:block
2.首行伪元素选择器 ::first-line{} 使用前提:依附元素是块级元素,如果不是可以变成块display:block
3.自定义前置伪元素选择器 ::before{} 使用前提:不管需不需要自定义内容,必须要使用content属性,没有内容为空
4.自定义后置伪元素选择器 ::after{} 使用前提:不管需不需要自定义内容,必须要使用content属性,没有内容为空

伪类选择器

1.结构性伪类选择器

:nth-chlid(){} 着重点是计数 ()中可以放数字 从1开始;odd(奇数) even(偶数);表达式 2n+1 (n从0开始,必须是+号)
:nth-child(1) 等价于 :nth-first() 找第一个
:nth-last-child(1) 【倒着数第一个】 等价于 :nth-last() 找最后一个

:nth-of-type() 着重点是类型,()中可以放数字 从1开始;odd(奇数) even(偶数);表达式 2n+1 (n从0开始,必须是+号)
:nth-of-type(1) 等价于 :first-of-type() 找第一个
:nth-last-of-type 【倒着数第一个】 等价于 :last-of-type 找最后一个

2.UI状态伪类选择器

:hover 悬停状态
:focus 焦点状态
:checked 选中状态
:disabled 不可用状态

3.其他伪类选择器

:not() 代表过滤掉某个或者某些元素 li:not(.java) --不要 , li.java --要
li:not(.java):not(.php)连续使用

CSS选择器优先级

  1. 选择器写的越准确(越长)优先级越高
  2. id选择器 > class选择器 > 元素选择器
  3. 同级别同长度下,css按照顺序执行,后写的覆盖前面的
  4. 自行测试

弹性盒子模型

<!-- 
横向布局

弹性盒子模型 display:flex 
配套属性:
    flex-direction 作用对象:弹性盒子 设置弹性盒子内子元素的排列方向
    	其值有row(横着默认),column(竖着),column-reverse(反向竖着)row-reverse(反向横着)                            
    flex-wrap 作用对象:弹性盒子 设置弹性盒子内子元素是否换行,其值有nowrap(不换行默认),wrap(换行)
    order 作用对象:弹性盒子内子元素 设置该子元素的排列位置 值越小越靠前
    flex 作用对象:弹性盒子内子元素 复合属性 flex-grow(拉伸因子) flex-shrink(收缩因子) flex-basis(基准宽度)
    justify-content:作用对象:弹性盒子 设置弹性盒子内子元素在排列方向上的分布方式
            flex-start 弹性的开端
            flex-end 弹性的尾端
            center 居中
            space-between 空白在中间
            space-around 空白在周围
    align-items 作用对象:弹性盒子 设置弹性盒子内子元素在排列方向上垂直方向的对齐方式
            flex-start 弹性的开端
            flex-end 弹性的尾端
            center 居中        
            baseline 弹性的开端,以元素的底部为基准对齐

    align-content 作用对象:弹性盒子 设置弹性盒子内行的分布方式
            flex-start 弹性的开端
            flex-end 弹性的尾端
            center 居中
            space-between 空白在中间
            space-around 空白在周围

object-fit:cover 图片适应

-->

定位

position
其值有:static(默认) relative(相对定位) absolute(绝对定位) fixed(固定定位)
配套属性: left right top bottom z-index(层次,值越大越靠人眼), 前提position的值必须是relative(相对定位) absolute(绝对定位) fixed(固定定位)其中一个

场景:

  • 纯使用relative 保留元素的物理空间,定位的参考位置是元素本身,随着浏览器滚动而滚动
  • 纯使用absolute 不保留元素的物理空间,定位的参考位置是浏览器,随着浏览器滚动而滚动
  • 纯使用fixed 不保留元素的物理空间,定位的参考位置是浏览器,不随着浏览器滚动而滚动
  • 结合使用relative和absolute relative作用祖先元素,absolute作用该元素,定位参考是祖先元素,随着浏览器滚动而滚动

CSS长度单位

1.绝对长度单位

px(像素)、in(英寸)、cm(厘米)、mm(毫米)等

2.相对长度单位

  • %(以父级元素的尺寸为参考维度)
  • em 以父级元素字体大小为参考维度
  • rem 以html元素字体大小为参考维度
  • vh 以视口的高为参考维度
  • vw 以视口的宽为参考维度
  • vmin 以视口的高度,宽度最小的为参考维度
  • vmax 以视口的高度,宽度最大的为参考维度

标签:伪类,元素,基础,display,nth,选择器,CSS
From: https://blog.csdn.net/a289246/article/details/136141655

相关文章

  • 硬件基础知识——电感
    电感常用公式 感抗:XL=2πfL,频率越小感抗越小,频率越大感抗越大电感能量公式:电感两端电压:磁通量:ψ(psi)为磁通量,N表示线条数,Φ表示磁通量B表示磁感应强度,A是电感的有效截面积。如果电感中流过电流I,会产生磁动势F,特性:阻交通直,阻碍电流的突然变化,当电感饱和之后相当于一条......
  • 【AI前沿】深度学习基础:循环神经网络(RNN)
    文章目录......
  • 【AI前沿】深度学习基础:卷积神经网络(CNN)
    文章目录......
  • AI绘画零基础入门必看,新手小白扫盲教程,一文搞懂MIdjourney和Stable Diffusion有什么不
    大家好,我是画画的小强Midjourney是目前全网最强大的AI绘画平台,用户只需要简单地输入关键词描述,就能获得多幅风格各异的绘画作品,无需任何专业的绘画技能,即刻拥有让人惊叹的艺术创造力。在MidjourneyV5版本之前,用户可以享受免费使用额度,只需要注册一个账户即可在线体验AI......
  • 理解局域网技术:从基础到进阶
    局域网(LAN)是在20世纪70年代末发展起来的,起初主要用于连接单位内部的计算机,使它们能够方便地共享各种硬件、软件和数据资源。局域网的主要特点是网络为一个单位所拥有,地理范围和站点数目均有限。局域网技术在计算机网络中占有重要地位。最初,局域网比广域网具有较高的数据率......
  • 解决若依框架与tailwindcss 样式冲突问题
    首先下载tailwindcss样式https://www.tailwindcss.cn/docs/installation我们可以按照官方文档来进行配置 npminstall-Dtailwindcssnpxtailwindcssinit /**@type{import('tailwindcss').Config}*/module.exports={content:["./src/**/*.{html,js}"],the......
  • 网络流-基础概念
    网络网络是一个由\(n\)个点\(m\)条边组成的有向图\(G\),满足每一条边\(x\toy\)都有边权\(C_{x\toy}\),我们称\(C_{x\toy}\)为容量。图中还有两个特别的点,分别是源点\(S\)和汇点\(T\),满足\(S\neT\)。流如果函数\(f(x\toy)\)满足以下的要求,那么我们称函数\(f......
  • 计算机基础-软件知识
    计算机基础-软件知识浏览器内核:核心技术五大浏览器:ie、谷歌、火狐、欧朋、苹果Safari只有以上五个浏览器有自己的核心技术,其他浏览器都是套皮正规的测试流程应该包含以上五个浏览器的测试,如果没有特别要求,只需测前三个就好。常见的图片类型1:jpg:颜色信息比较方法的一种图......
  • 游戏AI的创造思路-技术基础-情感计算(1)
    游戏中的AI也是可以和你打情感牌的哦,不要以为NPC是没有感情的,不过,不要和NPC打过多的情感牌,你会深陷其中无法自拔的~~~~~~目录1.情感计算算法定义2.发展历史3.公式和函数3.1.特征提取阶段TF-IDF(词频-逆文档频率)公式:3.2.模型训练阶段3.3.情感识别阶段3.4.情感生......
  • C++编程基础
     一:C++程序语言的基本组成。其中包括:1.一些基础数据类型:布尔值(Boolean)、字符(character)、整数(integer),   浮点数(foating  point)。2.算术运算符、关联运算符以及逻辑运算符,用以操作上述的基础数据型别。这些运算符不仅包括一般常见的加法运算符、等......