前端之CSS

css选择器

cascading style sheet 层叠样式表

css代码写法

h1{color:red}     选择器{css属性:属性值}

css的三种引入方式

方式1(head标签导入)

    <style>
        div{background-color: darkkhaki;height: 100px; 100px}
    </style>

方式2(内敛方式书写)

<div style="background-color: cornsilk; 100px;height: 100px;"></div>

方式3(外部文件导入)

再head标签写link标签
	<link rel="导入文件类型" href="文件路径">
    	<link rel="stylesheet" href="sty.css">

sty.css文件内容

div{background-color: greenyellow; 500px;height: 500px}

css选择器种类(以下标签名都为元素选择器,以方便理解)

基本选择器

元素选择器

标签名(div,span等){css属性:值}

ID选择器

#ID的值{css属性:值}

类选择器(class)

.类值{Css属性:值}
标签名.类值{css属性:值}   ----限定标签名的类值生效
div.类值{css属性:值}   -----限定div标签

通用选择器(*)

*{css属性:值}    所有标签设定

组合选择器

后代选择器

标签名 标签名下的标签名{css属性:值}
div a{css属性:值}  ---div标签后代里面的所有a标签

儿子选择器

标签名>标签下一层的标签名{css属性:值}
div>a{css属性:值}  ---div标签后的a标签生效

毗邻选择器

标签名+标签名下相邻的标签{css属性:值}
div+a{css属性:值}  ---与div相邻的下邻居的a

弟弟选择器

标签名~标签名相邻下的所有标签{css属性:值}
div~a{css属性:值} ---找到同级的a

属性选择器

标签名[属性名]{css属性:值} 
div[title]{css属性:值}  找到含有title属性的div标签
div[title=ss]{css属性:值}   找到含有title属性并且值为ss 的div标签
[title]   所有含有title属性的标签

分组选择器

标签名1,标签名2{css属性:值}    ----标签1标签2共享样式
div,p{css属性:值}   ---div,p 共同样式

伪类选择器

a标签	
	a自带样式:未访问未蓝色,访问后为紫色.
    a:link{css属性:值}          未访问的变样式
    a:visited{css属性:值}       已访问的变样式
    a:hover{css属性:值}         鼠标悬浮变样式(可以用再其他标签)
    a:active{css属性:值}        点击变样式

input标签
    input:focus{css属性:值}      input选择后改变样式

伪元素选择器

标签名:first-letter{css属性:值}
	首字母大写
	
标签名:before{content:">";css属性:值}
	在标签前插入内容.content对应的为加入的内容

标签名:after{content:"<";css属性:值}
	在标签后插入内容.content对应的为加入的内容

css选择器优先级(权重,永不进位)

继承选择器的优先级为:0
元素选择器的优先级为:1
类选择器的优先级为:10 (优先级相同最后运行的样式;代码从上到下运行)
ID选择器的优先级为:100
内敛样式的优先级为:1000
!important优先级为:无敌 --->写在样式中{color:red !important}
嵌套选择器优先级算法为:加法(优先级数字累加超过100 优先级也不会超过ID选择器)

注意:某些标签样式设置有内置样式,权重大于继承(如:a标签)

css属性相关

高度宽度设置

注意:只有块级标签能设置高度宽度,内敛标签不能设置高度宽度.内敛标签的高度宽度有内敛标签内的内容决定
div {
	100px;宽度
	height:100px;高度
}

字体属性

字体设置:
div{
font-family: '新細明體-ExtB';
font-family: '細明體_HKSCS-ExtB','黑体','宋体';  #某些浏览器不							支持第一个,就会向后寻找
}



字体大小设置:
div{
font-size:18px ;  #默认为16px
}



字体粗细:
div{
font-weight: 100;   #还有bold等
}


颜色表示方式

red 色彩单词
#ff0000 16进制
rgb(123,199,255)  rgb表示方式
rgba(123,199,255,0.3)   rgbc最后一位为透明度

文字属性

文字对齐:
    text-align:center  #居中
    text-align:reght   #左对齐
    text-align:left    #右对齐


文字装饰:
	text-decoration:none   去下划线
	text-decoration:line-through 中划线
	text-decoration:overline   上划线
	
	
首行缩进:
	text-indent:xxpx   首行缩进xxpx(默认字体大小16px.缩进2个字符32px)

背景属性

背景颜色:
	background-color:颜色属性
	
背景图片:
	background-image: url("图片路径") 
	background-repeat: no-repeat  不平铺(repeat-x:x轴平铺;repeat-y:y轴方向平铺)
	background-position:位置信息  
		位置信息:左上(left top) 右下(right bottom) 中间(center center)...
		位置信息:100px 50px (距离左边100px,距离上50px)
固定屏幕某地方:
	background-attachment:fixed  固定在屏幕某地方
	
简写方法:background:url("图片路径") no-repeat center center

边框

border-style:边框样式
	none	无边框。
    dotted	点状虚线边框。
    dashed	矩形虚线边框。
    solid	实线边框。
border-color:边框颜色
border-边框宽度

 上下左右每个边框都可单独设置
border-left-corlor:bule
border-right-corlor:red
border-top-corlor:yellow
border-bottom-corlor:green

简写方式:border: 2px solid red:  宽度,样式,颜色
		border-left:2px solid red:  宽度,样式,颜色

border-radius:px/%  边框圆角

display

转变标签某些属性

display:inline  将标签设置为内敛标签
display:block   将标签设置为块级标签
display:inline-block 将标签设置为内敛和块级共有属性(可以设置高度宽度,单不独占一行)
display:none   将标签隐藏,并且不占用之前的空间
Visibility:hidden  将标签隐藏,但是占用原位置

css盒子模型

content 内容区域
padding 内边距
	简写:padding 10px 20 px  上下10px,左右20px
		padding 10px; 上下左右px
		padding 5px 4px 3px 2px 上右下左内边距
border 边框宽度
margin 外边距(标签与标签之间的距离)
	margin-left:左外边距
	margin-right:右外边距
	margin-top:上外边距
	margin-bottom:下外边距
	简写:margin:上下外边距 
		margin:上右下左外边距

float浮动

float:left 向左浮动
float:right 向右浮动

clear:both清除左右浮动/left清除左浮动/right清除右浮动
子标签全部浮动,如父标签无高度,会导致父级标签塌陷(父级标签高度为0,不显示).
	解决方式:方法一:clear:both 不允许图层上有浮动
			方法二:给父级标签加: .clearfix(名字可以自定义,一般为clearfix):after{
                content:""
                display:block
                clear:both
			  }   #通过给父级标签加"" 设置成块级,且不允许浮动

clear

clear清除浮动
left	在左侧不允许浮动元素。
right	在右侧不允许浮动元素。
both	在左右两侧均不允许浮动元素。
none	默认值。允许浮动元素出现在两侧。
inherit	规定应该从父元素继承 clear 属性的值。

overflow溢出

visible	默认值。内容不会被修剪,会呈现在元素框之外。
hidden	内容会被修剪,并且其余内容是不可见的。
scroll	内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto	如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit	规定应该从父元素继承 overflow 属性的值。

圆形头像

将div设置圆边,比例50%就为圆形
将图片宽度设置为100%!就不会超过父级标签
注意设置overflow:fidden


<div style="overflow: hidden;border-radius: 50%;background-color: antiquewhite; 50px;height: 50px"></div>
将背景颜色换成图片就可以

定位position

相对定位

position:relative   相对定位(相对自己原来位置定位,保留自己原来位置)
	top:		距离原上边框的距离
	right:		距离原右边框的距离
	bottom:		距离原下边框的距离
	left:		距离原左边框的距离

绝对定位

position:absolute   绝对定位(相对父级,祖先级标签,找设置了相对定位的父级标签位置来移动,如果找不到按照整个网页来移动,不保留自己原来位置)
	top:		距离原上边框的距离
	right:		距离原右边框的距离
	bottom:		距离原下边框的距离
	left:		距离原左边框的距离

固定定位

position:fixed   固定定位(基于浏览器窗口位置)
	top:		距离浏览器窗口顶部的距离
	right:		距离浏览器窗口右边的距离
	bottom:		距离浏览器窗口底部的距离
	left:		距离浏览器窗口左边的距离

锚点:<a name="top"></a>    #name 和ID 都可以
触发锚点:<a herf="#top"></a>    #herf里写#对应的id或者name值

z-index(控制层级)

z-index:值  

z-index 值大的在上面

opacity透明度

opacity:透明度值(范围:0~1)  
rgba 背景颜色透明度
opacity 整体透明度

2

原文地址:https://www.cnblogs.com/luyi84895838/p/11945895.html