CSS基本属性

一、文本属性

color 为字体指定颜色:
    有rgb(0~255,0~255,0~255) 颜色十六进制:#0000,颜色名字:red/black/white  rgba(0~255,0~255,0~255,0~1):a为透明度,取值是0~1;
div {
  height: 100px;
  width: 100px;
  background: #000;
  /* 十六进制 */
  color: #1a1a1a;
  /* rgb */
  color: rgb(90, 80, 100);
  /* rgba */
  color: rgba(90, 80, 100, 0.5);
  /* 颜色名字 */
  color: black;
}
font-style 用于打开和关闭斜体文本:
    默认值为normal,斜体:italic
font-weight 为字体设置粗细程度:
		取值为数字:例:100~900 或者是bold(700)加粗或normal(400)
font-size 为文字指定大小
		取值为像数值:15px;一定要带单位
font-family 为文字指定特殊的字体,
	浏览器只会使用浏览器可以访问到的字体,即用户已经安装的字体
	取值为:"字体名称","备用字体名称"
	注意:
	1.如果是中文,要带引号。逗号分割开备用字体
	2.如果希望中文字体与英文字体分别处理字体类型,那么英文字体引用要在中文字体前面
缩写形式 font: style weight size family
		font:style weight size family;
		  例如:
			 font:italic bold 10px "楷体";
		sytle可以省略 weight可以省略,且位置可互换,其他不可省且位置排序固定

webFont 网络字体
	https://www.ziti163.com/webfont/   链接
	当用户电脑中没有安装对应字体的时候,webFont可以加载网络字体进行显示。
	@font-face {            
font-family: 'myfont';          
src: url(“/fonts/test.woff”), url("/fonts/test.ttf");       
}       
div {           
font-family: myfont;        
}
<div>        
  test  
</div>

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

字体图标
 目前比较流行的开源字体图标库有
  iconfont               http://www.iconfont.cn/
  	 font-awesome    http://fontawesome.dashgame.com/
	例:iconfont
	##### -iconfont使用步骤
	1.打开iconfont网站https://www.iconfont.cn/
	2.搜索要使用的图标
	3.将喜欢的图标加入到购物车,前提是需要登录iconfont
	4.打开购物车,下载代码到本地
	5.下载后解压,将对应的文件夹放到项目目录下
	6.在对应的页面中,通过link标签引入刚刚下载文件里的iconfont.css,直接根据对应的类名使用即可-	
	##### iconfont多色图标使用步骤
	1.搜索或选择多色图标
	2.选择合适的图标加入购物车
	3.将图标添加至项目,没有项目创建即可
	4.在项目中选择symbol,生成线上链接或下载到本地
	5.引用线上js地址,直接使用script标签引入即可;下载到本地,引入iconfont.js到项目中即可
	多色与单色图标的区别:
	单色图标引入:
	引入的时css文件
	`<!-- class="iconfont icon-xxx" 使用对应的图标即可-->
	  <i class="iconfont icon-Flowerbud"></i>`
多色图标的引入
引入的时js文件
<!-- 挑选相应图标并获取类名,应用于页面 #icon-xxxx -->
  <svg class="icon" aria-hidden="true">
    <use xlink:href="#icon-xianxingbingbao"></use>
  </svg>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

text-decoration 设置或者取消文本修饰
underline:下划线
line-through:删除线
none:无样式
overline:上划线

在这里插入图片描述

text-align 文字排列方式
		center:中间对齐
		左对齐:left 右对齐:right
text-indent 文本缩进属性
取值:2em:缩进两个文字,单位就是em
text-transform 设置或者取消字体改变
uppercase/lowercase:将字体转换成大写/小写
​capitalize	将所有单词第一个字母转换为大写
full-width	转换为类似于一个等宽字体
text-shadow 设置或者取消文本阴影
水平方向(h-shadow) 垂直方向(v-shadow) 模糊距离(可选,blur) 阴影颜色(可选,默认为黑色color):5px 5px 5px red,取值为none即没有字体阴影

二、列表样式

- 有默认样式的元素

​ ul,ol 元素的margin-top,margin-bottom均为16px(1em) , padding-left为40px(2.5em)
​ li 元素没有设置默认的空白(行间距)
​ dl 元素的margin-top,margin-bottom均为16px(1em),但是没有内边距
​ dd 元素的margin-left为40px(2.5em)
​ p 元素的margin-top,margin-bottom为16px(1em)
a 元素

- list-style-type 设置列表项标志类型

​ 取值:

​ none : No item marker is shown.
​ disc : A filled circle (default value)
​ circle : A hollow circle
​ square : 小方块
​ decimal : Decimal numbers,Beginning with 1
​ lower-roman : Lowercase roman numerals,E.g. i, ii, iii, iv, v…
​ upper-roman : Uppercase roman numerals,E.g. I, II, III, IV, V…
​ decimal-leading-zero : Decimal numbers,Padded by initial zeros,E.g. 01, 02, 03, … 98, 99
​ …

- list-style-position 设置列表项标志出现的位置
取值:
	outside : 列表项标志出现在主块框的外部,即标志向与li标签是两个独立的(默认取值)
	inside  : 列表项标志出现在主块框的内部,即将标志项与li成为一个整体
- list-style-image 自定义设置列表项标志
取值:
	url() : 指定图标位置
- list-style 速写 type image position
列表样式的速记写法           
取值:          
list-style:type image position

我们最常用的就是list-style:none;设置没有任何样式,通过CSS去自定义样式。

三、其他样式

line-height:文字垂直居中:
取值:
	line-height:30px;
	注意:只针对文字,不针对模块居中,与text-align一样
	当文字多行时,不适宜使用该文字垂直居中
dispaly:可以改变标签的属性
取值:
	inline:行内元素,给元素设置宽高是无效的
	inline-block:行内块级元素,拥有行内元素属性也拥有块级元素的属性,可以设置宽高,且不独占一行
	block:块级元素,独占一行,设置宽高有效
	​none : 不显示,不占据屏幕空间
	flex 伸缩盒布局,
visibility:隐藏与显示
	取值:
		hidden:隐藏元素,但会占据屏幕空间
		visible:显示元素

=========================================================

元素的隐藏与显示的4种方式:
-visibility:hidden 占据屏幕空间
-display:none 不占据屏幕空间
-opacity:0 透明度为0占据屏幕空间
-overflow:hidden 当子元素内容超出我们的父元素时会隐藏。

=========================================================

overflow:超出父元素时
取值:
	scroll:子元素内容超出时会显示纵横向滚动条
	auto:超出时会显示纵向滚动条
	hidden:超出内容隐藏
cursor:指定光标的样式
default默认光标(通常是一个箭头)
auto默认。浏览器设置的光标。
crosshair光标呈现为十字线。
pointer光标呈现为指示链接的指针(一只手)
move此光标指示某对象可被移动。
e-resize此光标指示矩形框的边缘可被向右(东)移动。
ne-resize此光标指示矩形框的边缘可被向上及向右移动(北/东)。
nw-resize此光标指示矩形框的边缘可被向上及向左移动(北/西)。
n-resize此光标指示矩形框的边缘可被向上(北)移动。
se-resize此光标指示矩形框的边缘可被向下及向右移动(南/东)。
sw-resize此光标指示矩形框的边缘可被向下及向左移动(南/西)。
s-resize此光标指示矩形框的边缘可被向下移动(南)。
w-resize此光标指示矩形框的边缘可被向左移动(西)。
text此光标指示文本。
wait此光标指示程序正忙(通常是一只表或沙漏)。
help此光标指示可用的帮助(通常是一个问号或一个气球)。

四、盒子模型

1.盒子的基本属性

盒子一般指的是块元素,盒子是我们布局的重要机制。一个盒子应该由外边距、边框、内边距、内容组成。如div等

margin 外边距
外边距 代表盒子外面四周的区域。相邻元素的边距会合并(margin collapsing)
设置方式:
	margin:10px 为上下左右的外边距为10px
	margin:10px 20px 为上下为10px,左右为20px
	margin:10px 20px 30px 为上  左右 下
	**margin: 上 右 下 左 顺时针的形式**
padding 内边距
内间距 在任何定义的边界内的元素内容周围生成空间
设置方式与margin一样
border 边框
设定介于padding的外边缘与margin的内边缘之间,默认值为0,是一个盒子边框
圆角边框:border-radius:5px;
width & height
用于设置内容区的宽高,该片区域用于显示内容。盒子高度默认为内容的高度。
max-width:元素的最大宽度,用来限制当前元素的最大宽度
min-width:元素的最小宽度
min-height:元素的最小高度
max-height:元素的最大高度

在这里插入图片描述

============================================================================

盒子的种类:

1.w3c盒子,也称标准盒子或内容盒子
即普通的盒子。如div等
设置宽高属性:
	width/height 属性仅表示盒子内容所占的宽高
盒子所占据的页面宽高:
	width+padding+border +margin
盒子的宽高:
	width/height+padding+border
2.边框盒子,也称IE盒子或怪异盒子
设置成边框盒子/盒模型:box-sizing:border-box;(该属性的默认值为content-box,时w3c盒子)
盒子所占页面的宽高:width/height+margin
盒子的宽/高:width/height
二者区别:(面试)

标准盒子不管怎么设置内外边框,内容区域的宽高都不会改变,它的宽高是设置给内容区的,IE盒子设置的内外边距时,会不断挤压内容区域,它的宽高设置是设置给盒子的

盒子的背景图片

background-image:url(‘背景图片地址’)
background-repeat 背景图片设置平铺
取值:
	repeat:当背景图片不够大时,会重复该图片,直至铺满盒子为止(默认)
	no-repeat:不设置平铺
	repeat-x/repeat-y:在x方向/y方向进行平铺
background-position 背景图片位置
取值:
center/left/right:在中心/左边/右边位置
background-position:10px 10px 图片原点在x轴与y轴的位置
速写法 background:图片颜色 图片地址 平铺方式 关联方式attachment 图片位置 图片位置
取值:
	背景颜色 背景图片地址 平铺方式 位置 位置:background:red url('') no-repeat 10px 10px
background-attachment 背景图片不随着滚动条的滚动而滚动
取值:flex

五、浮动

float 浮动设置
取值:
right/left/top/bottom :
浮动元素对兄弟元素的影响
当设置元素浮动时,会脱离文档流,飘在不设置浮动兄弟元素的上面,不占据底下的屏幕位置。注意文字是不会被浮动元素覆盖掉。
清除浮动的方式
两个元素同时设置浮动
clear:both; 清除浮动
overfow:hidden; 使用overflow与clear的效果一样,使用的使BFC原理
浮动对子父元素的影响
但子元素设置浮动时,父元素会产生高度塌陷,即父元素失去高度支撑。
解决高度塌陷的方法:
1.在设置了浮动得子元素得下方即父元素的里面设置一个空的div,给该div设置clear:both

在这里插入图片描述

2.使用伪元素方式,给父元素设置 类名::after{ content:"";display:block;clear:both; }

在这里插入图片描述

3.给父元素设置overflow:hidden;

在这里插入图片描述

字围现象
浮动的元素不可以遮挡文字,文字会从浮动元素的周围找到位置自动排列,这是因为文字具有自维现象
边距合并
兄弟外边距合并:
	当两个兄弟元素挨在一起时,外边距的合并,如果两个取值为正时,取最大的,当一正一负时,外边距相加,两个为负时,取绝对值较大的一个。 
	解决:
		1.BFC属性:给上边的兄弟元素,设置一个父元素的div,给该div设置overflow:hidden;
		2.只给其中一个兄弟元素设置外边距
父子级外边距合并:
	当父子元素都设置同一边的外边距时,会产生外边距合并的现象,取值一个比较大的值
	解决:
		1.使用padding解决,给父元素设置padding。
		2.给父元素设置边框border
		3.给父元素设置一个overflow:hidden;
BFC 块级格式化上下文,(面试)
概念:可以理解一个元素的属性,当元素拥有这个属性,就可以拥有一个独立的渲染空间,它的布局不会影响容器外的布局
如何触发:
	1.是html根元素
	2.浮动元素(元素的float值不是none)
	3.绝对定位(元素的position为absolute或fixed)
	4.display为inline-block、table-cell、table-caption、table、table-row、table-row-group、
	table-header-group、table-footer-group、inline-table、flow-root、flex或 inline-flex、grid或 inline-grid
	5.overflow值不为visible的元素
作用
	1.避免外边距重叠
	2.清除浮动
	3.避免元素被浮动元素覆盖
	4.多列布局

六、定位布局

静态定位
​	是所有元素的默认定位方式。意味着将一个元素定位在默认文档流中。	
	position: static;
相对定位
特点:相对定位就是相对于自己在浏览器中的默认位置来定位的,不脱离文档流
position: relative;
使用top,right,bottom,left来控制
绝对定位
注意点:
1.绝对定位的元素是脱离标准流的
2.绝对定位的元素是不区分块级元素/行内元素/行内块级元素
3.如果一个绝对定位的元素是以body作为参考点, 那么其实是以网页首屏的宽度和高度作为参考点, 			   	   而不是以整个网页的宽度和高度作为参考点
4.一个绝对定位的元素会忽略祖先元素的padding
固定定位
取值:position:fixed 不管滚动条如何滚动,都不会随着滚动条的滚动而不见。
特性:
1.会脱离文档流,相对于浏览器的视口区域,不保留原先位置
粘滞定位
取值:position:sticky
特性:
1.relative+fixed,当达到阈值之后,就变成了固定定位,否则为相对定位,例如position:sticky;top:50px;当滑到相对的50px后,元素不再向上移动,将变成flex定位,但是,只在父元素内生效
2.不脱离文档流,原先位置保留
3.父元素不能overflow:hidden或者overflow:auto属性。 
z-index 元素堆叠顺序的属性
类似于置于顶层或置于底层的操作,默认值为0
水平垂直居中
1.通过margin
2.通过父元素设置box-sizing:border-box ,再通过padding挤压
3.通过父元素相对定位:给父元素设置相对定位,子元素设置绝对定位,并且配合属性全部为0,margin:auto
4.通过父元素相对定位:给父元素设置相对定位,子元素设置绝对定位,top:50%;left:50%,margin-left:-width/2;margin-top:-height/2;
5.利用伸缩盒布局:父元素设置dispaly:flex,justify-content:center; align-items:center;
6.利用宫格布局:父元素设置 display:grid,justify-conten:center;align-items:center;
7.给父元素设置display:flex;子元素设置margin:auto;

七、flex伸缩盒/弹性盒

flex布局可以简便、完整、响应式地实现各种页面布局。

取值与说明
display:flex;
默认沿着子元素主轴的方向进行排列

flex的属性

flex-direction 更改主轴方向
取值:
1.row:默认,主轴为水平方向
2.column:主轴沿着列排列,为竖直方向
3.row-reverse:主轴为水平方向的反转,默认主轴的起点为左上角,反转后起点为右上角,终点为右下角
4.column-reverse,主轴为列反转,起点为左下角,终点为左上角
flex-wrap 设置弹性元素是否换行
如果弹性元素超出父元素宽度,默认是不换行的,会进行等比例压缩。
取值:
1.nowrap:默认取值,不换行
2.wrap:换行
3.wrap-reverse:反向换行,即排不下的换到上面
flex-flow 更改主轴方向与设置换行的集合
取值:
主轴方向 是否换行:例flex-flow: row wrap
justify-content 设置主轴的对齐方式
取值:
1.flex-start: 主轴左对齐
2.center:主轴做一个居中对齐,子元素会变成居中对齐
3. flex-end:主轴做一个右对齐,子元素会变成右对齐
4. space-around:弹性元素间距为左右两侧项目到容器间距的2倍,

在这里插入图片描述

6. space-between:项目之间间距与项目与容器间距相等

在这里插入图片描述

7. space-evenly:弹性元素之间间距与项目与容器间距相等,相当于除去项目宽度,平均分配了剩余宽度作为项目左右margin

在这里插入图片描述

align-items 设置交叉轴对齐方式
取值:
1.flex-start :项目在交叉轴紧贴容器顶部,flex-end与之相反:
2.flex-end
3.	center:使用最多,自然不会陌生,在交叉轴中心位置排列
4.	baseline:比较特殊,它让项目以第一行文字的基线为参照进行排列,即文字对齐,还会优先选择文字进行一个对齐
5.	stretch:即如果弹性元素没设置高度,或高度为auto,则高度占满整个容器
align-content 设置弹性元素多行对齐方式
如果要出现align-content必须要使用换行
取值:
1.flex-start:开始位置从起点紧靠排列
2.flex-end:在终点开始的位置紧靠排列
3.center:在垂直方向中间的的位置开始紧靠排列
4.space-between: 上下两侧项目紧贴容器
5.space-evenly同理,项目之间间距与项目到容器之间间距相等
6.space-around与justify-content保持一致,即项目之间间距为上下两端项目与容器间距两倍。

弹性元素属性

order 控制元素的排列顺序
控制元素的排列顺序,取值是数字,值越小越靠前,默认order是0
flex-grow 用于决定弹性元素是否放大
用于当弹性盒有剩余空间时,flex-grow可以用于决定当前元素是否被放大占据剩余的空间,默认值是0;
取值:
1.flex-grow:1;将剩余的一份空间给到该弹性元素
2.要将剩余空间均匀分配给全部弹性元素时,只要给每个弹性元素都设置flex-grow:1;即可
flex-shrink 用于决定弹性元素是否缩小
当弹性盒的剩余空间不足时,flex-shrink可以用于决定哪个弹性元素不缩小,默认是缩小的
取值:
1.flex-shrink:0,该元素不等比压缩
2.1;默认值,等比例压缩
flex-basis 用于设置弹性元素宽度取值
默认auto,用于设置项目宽度,默认auto时,项目会保持默认宽度,或者以width为自身的宽度,但如果设置了flex-basis,权重会比width属性高,因此会覆盖widtn属性。
flex 是grow shrink basis属性的简写
grow shrink basis:默认值是:0 1 auto
取值:flex:1;代表占满剩余空间 
align-self 设置弹性元素自己的交叉轴的对齐方式
用于让个别项目拥有与其它项目不同的对齐方式,各值的表现与父容器的align-items属性完全一致。
取值:auto(默认) | flex-start | flex-end | center | baseline | stretch,表示继承父容器的align-items属性。如果没父元素,则默认stretch。

八、css动画

过渡-Transition

其可以让属性变化成为一个持续一段时间的过程,而不是立即生效的。

过度三要素

1.1必须要有属性发生变化
1.2必须告诉系统哪个属性需要执行过渡效果
1.3必须告诉系统过渡效果持续时长

-过渡触发

1、:hover 鼠标悬停触发

2、:active 用户单击元素并按住鼠标时触发

3、:focus 获得焦点时触发

4、@media触发 符合媒体查询条件时触发

5、点击事件 用户点击元素时触发

过度的属性

transition-property 规定过渡的名称
取值:
	1.none:不给属性值
	2.取值为属性名,如width/backgorund-color等
	3.可一次性定义多个过渡的属性,用逗号隔开即可,如 transition-property:width,backgorund-color;
	4.all:   所有属性都将获得过渡效果。
transition-duration 规定的过渡的时间
取值:transition-duration:5s;	默认是0
transition-timing-function 规定过渡效果的时间曲线。
linear  规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1))。
ease    规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。
ease-in 规定以慢速开始的过渡效果(等于 cubic-bezier(0.42,0,1,1))。
ease-out    规定以慢速结束的过渡效果(等于 cubic-bezier(0,0,0.58,1))。
ease-in-out 规定以慢速开始和结束的过渡效果(等于 cubic-bezier(0.42,0,0.58,1))。
cubic-bezier(n,n,n,n)   在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。
transition-delay 设置过渡的等待时长
取值:默认是0s,等待两秒之后才过渡
transition 过渡简写
取值:transition: 过渡属性 过渡时长 运动速度(过渡曲线) 延迟时间;
/*transition: width 5s linear 0s,background-color 5s linear 0s;*/ 
/*transition: background-color 5s linear 0s;*/ 
/*transition: width 5s,background-color 5s,height 5s;*/

动画animation

-animation-name 指定要绑定到选择器的关键帧的名称,
即告诉系统需要执行哪个动画,自己取名字。
	通过@keyframes来设置动画序列,序列中每个关键帧描述动画元素在动画序列的特定时间内如何渲染。关键帧使用了一个百分比来表示在动画序列中出现的时间。0%表示动画的初始时间,也可以通过from关键字表示。100%表示动画的结束时间,也可以通过to关键字表示。
  关键帧:
 @keyframes animiationName{
		keyframes-selector{
		css-style;
}
}
-animation-duration 动画指定需要多少秒或毫秒完成,告诉系统动画持续的时长

​ time 指定动画播放完成花费的时间。默认值为 0,意味着没有动画效果。

-animation-timing-function 设置动画将如何完成一个周期,告诉系统动画执行的速度

​ linear 动画从头到尾的速度是相同的。
​ ease 默认。动画以低速开始,然后加快,在结束前变慢。
​ ease-in 动画以低速开始。
​ ease-out 动画以低速结束。
​ ease-in-out 动画以低速开始和结束。
​ cubic-bezier(n,n,n,n) 在 cubic-bezier 函数中自己的值。可能的值是从 0 到 1 的数值。

-animation-delay 设置动画在启动前的延迟间隔。

​ time 可选。定义动画开始前等待的时间,以秒或毫秒计。默认值为0

-animation-iteration-count 定义动画的播放次数。告诉系统动画需要执行几次

​ n 一个数字,定义应该播放多少次动画
​ infinite 无限次执行

-animation-direction 指定是否应该轮流反向播放动画。

​ normal 默认的取值, 执行完一次之后回到起点继续执行下一次
​ alternate 往返动画, 执行完一次之后往回执行下一次
​ reverse 反向执行

-animation-fill-mode 规定当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式。

​ none: 不做任何改变
​ forwards: 让元素结束状态保持动画最后一帧的样式
​ backwards: 让元素等待状态的时候显示动画第一帧的样式
​ both: 让元素等待状态显示动画第一帧的样式, 让元素结束状态保持动画最后一帧的样式

-animation-play-state 告诉系统当前动画是否需要暂停

直接设置的话是没有效果的,要有触发条件才能实现效果,如鼠标悬浮的时候才给它暂停。
​ running: 执行动画
​ paused: 暂停动画

animation的简写

transform 转换

rotate 旋转
格式:transform:rotate(45deg);旋转45度,以对角线为圆心进行旋转,默认为顺时针旋转
transform:rotateX(45deg);围绕X轴旋转45度,是一个3D的效果

在这里插入图片描述

translate 平移
格式:
transform:translate(100px,100px);在水平方向平移100px,垂直方向平移100px,相对于本身自己的位置来平移
scale 缩放
transform:scale(0.5,2); 在水平方向上缩小0.5倍,在垂直方向上放大2倍。  默认都是1,如果括号里的值大于1即是放大,小于1就是缩小。
transform 简写
transform:rotate() translate() scale(2);
transform-origin 形变中心点
用于更改形变的中心点,如果是旋转的话,可以改变旋转的中心点以右上角或左上角进行旋转。
格式:
transform-origin:center bottom;他的形变中心点在水平方向的中间,垂直方向的下边。取值也可以是像素值或者百分比

过渡transition与animation的区别

1.1不同点
过渡必须人为的触发才会执行动画
动画不需要人为的触发就可以执行动画

1.2相同点
过渡和动画都是用来给元素添加动画的
过渡和动画都是系统新增的一些属性
过渡和动画都需要满足三要素才会有动画效果

九、媒体查询

即可以自动监测我们各个设备的屏幕的宽度,当设备的转换的话,尽量使用媒体查询。如果只是简单的宽高之间的转变,可以使用伸缩盒。每个媒体都要写一套媒体方案

使用方法

引入之后就会类似做一个if-else的作用

<!--第一种引入方式  link元素中的CSS媒体查询,当大于800px时,后面的example.css才生效 -->
<link rel="stylesheet" media="(min-width: 800px)" href="example.css" />
<!-- 第二种引入方式 样式表中的CSS媒体查询 ,当大于600px时,在media底下的样式才生效-->
<style>
@media (max-width: 600px) {
  .class {
    display: none;
  }
}
</style>

@media 媒体类型 and (媒体特性){你的样式}

-媒体类型
all所有媒体(默认值)
screen彩色屏幕
print打印预览
-媒体属性
width(可加max min前缀)
height(可加max min前缀)
device-width(可加max min前缀)
orientationportrait竖屏/landscape横屏
@media screen and (max-width:580px){
 body {
   background-color: red;
  }
}
/* 二者要and的条件满足时才能生效 */
@media screen and (min-width:600px) and (max-width:900px){
  body {background-color:blue;}
}

and对应的还有逗号分割,就是或者的意思

面试题:px em rem的区别

px:像素单位,相对于屏幕宽高度而言
em:相对长度单位 相对于当前元素的字体大小,默认1em=16px(该当前元素没有设置字体大小时)
rem:相对的长度单位 相对于html元素的字体大小而言的,默认是1rem=16px(当没给html元素设置字体大小时)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前端开发中,CSS和JS都是基本语法的重要组成部分。 CSS(层叠样式表)是一种用于描述网页上元素样式的语言。它使用选择器来选择要应用样式的元素,并使用属性来定义这些元素的外观。CSS基本语法包括选择器和属性值的组合。例如,使用选择器来选择元素,然后在大括号内使用属性属性值来定义元素的样式。例如,可以使用以下语法来设置一个元素的背景颜色: ``` selector { property: value; } ``` JS(JavaScript)是一种用于为网页添加交互性和动态功能的编程语言。它可以用于处理用户输入、操作DOM元素、发送网络请求等。JS的基本语法包括变量声明、条件语句、循环语句和函数定义等。例如,可以使用以下语法来声明一个变量并给它赋值: ``` var variableName = value; ``` 除了基本语法,CSS和JS还有许多高级特性和用法,可以根据具体需求进行学习和应用。 引用\[1\]提到了HTML的顺序执行特点,这意味着HTML文档会按照从上到下的顺序进行解析和执行。引用\[2\]提到了CSS对页面渲染和JS执行的阻塞情况,CSS会阻塞页面的渲染和JS的执行,但不会阻塞外部脚本的加载。引用\[3\]提到了HTML的解析过程,包括将HTML转化为DOM树的过程。 综上所述,前端开发中的CSS和JS都有自己的基本语法和特点,可以根据需要进行学习和应用。 #### 引用[.reference_title] - *1* *2* *3* [前端性能优化 css和js的加载与执行](https://blog.csdn.net/weixin_30765637/article/details/119401192)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值