-css-

1. CSS选择器:

元素选择器: 用元素名。 权重 1
类选择器: 用点定义 权重 10
id 选择器: # 定义 权重 100
!important: 忽略选择器的权重,最高级
层次关系:父子关系用空格定义
+ : 同辈,后面的相邻,
~ : 同辈, 后面的
> : 一级子
并列关系: 用逗号定义

2. 伪类选择器: 用:定义

2.1 a相关的 love

link a 标签为访问过的
visited: 被访问过的
hover: 通用 , 悬停时
active: 点中时
/* l > v > h > a && love hate*/
/* 未访问过的 */
a : link {
color : red ;
}
/* 访问过的 */
a : visited {
color : green ;
}
/* 悬停 */
a : hover {
color : salmon ;
}
/* 点中时 */
a : active {
color : yellow ;

2.2 通用伪类

hover: 悬停
after/before: content 标记内容
} first-child: 第一个子
last-child: 最后一个子
nth-child 第几个子元素 是 这个元素
nth-of-type 第几个子元素
a : after {
content : ' ↗↗↗↗↗ ' ;
color : yellow ;
}
a : before {
content : ' ↖↖↖↖↖ ' ;
color : yellow ;
1
/* 第三个子元素 是 H1 */
div > h1 : nth-child ( 3 ) {
font-style : italic ;
}
/* 第二个 H1 元素 */
div > h1 : nth-of-type ( 2 ) {
border : 1px solid black ;
}

3. 样式: 边框

复合样式: border: 1px solid black;
border-width: 1px; 线宽
border-style: solid 实线
border-color: black; 线颜色
上右下左原则: border-top:1px solid black; border-width:1px 2px 3px 4px;
div .div1 {
width : 100px ;
height : 100px ;
border-top : 1px solid black ;
border-color : black red yellow green ;
border-right-width : 2px ;
border-style : solid dotted double dashed ; /* 实线 点线 双实线 虚线
*/
border-bottom-width : 4px ;
}
练习技巧: hover 悬停修改样式
边框的无色技巧
<style> {
display : none ; /* 不显示 */
}
span : hover + .show {
display : block ; /* 显示块 */
}
.a1 {
display : inline-block ; /* 行内块有宽高 */
width : 0px ;
height : 0px ;
border-style : solid ;
border-width : 0px 8px 8px ;
/* transparent 无色 */
border-color : transparent transparent black transparent ;
}
span : hover > .a1 {
border-width : 8px 8px 0px ;
border-color : black transparent transparent ;
}
</style>
<span> 切换 <i class = "a1" ></i></span>
<div class = "show" >
ljksdfklasjklfjakldj
</div>

4. 圆角

border-radius: 边角距离
特效练习:
width/height 200px;
border-radius: 100px
div overflow:hidden: 超出时隐藏
opcity: 透明度: 0-1
transform scala(1.2); 变形缩放 1.2
transistion: all 1s; 变形的周期 1

5. 背景:

background-image: url(' 地址 ') ; 背景图片, 默认 x,y 的循环
background-repeat: no-repeat; 不循环,
repeat-x x 轴循环
repeat-y: y 轴循环
background-size: 背景图填充大小
cover: x
contain y
.div1 {
width : 900px ;
height : 600px ;
border : 1px solid black ;
background-image : url ( '/imgs/meinv.webp' );
background-repeat : repeat-x ;
background-size : contain ;
}
backgroun-posistion: 位置 通常用负值定位图片位置
background-attachment fixed: 滚动时图片的 状态
<style>
.div1 {
width : 900px ;
height : 600px ;
border : 1px solid black ;
background-image : url ( '/imgs/meinv.webp' );
background-repeat : no-repeat ;
background-size : contain ;
background-attachment : fixed ;
}
.searchbtn {
display : inline-block ;
width : 90px ;
height : 75px ;
background-image : url ( /imgs/btnset.webp );
background-repeat : no-repeat ;
background-position : -164px -85px ;
}
</style>
</head>
<body>
<div class = "div1" >
</div>
<i class = "searchbtn" ></i>
</body

6. 定位:position(块):

left/top/bottom/right: 联用 >
position说明
static默认定位
fixed固定定位
relative相对定位
absolute绝对定位
sticky滚动定位fixed+relative

6.1 fixed: 相对窗口定位;;清除原位置,相对窗口定位

.fixedgg {
border : 1px solid black ;
background : yellow ;
width : 100px ;
height : 100px ;
/* 清除了元位置 */
position : fixed ;
bottom : 10px ;
right : 10px ;
}

6.2 sticky: 默认有位置, 滚动时,无位置。导航条用。相对原位置

.nav {
background-color : bisque ;
height : 100px ;
position : sticky ;
top : 10px ;
}

6.3 relative: 相对定位, 保留原位置, 相对于原位置。

z-index:999: 覆盖的顺序
.a1 {
background : blue ;
width : 100px ;
height : 100px ;
position : relative ;
/* 如果不写位置,无变化 */
left : 100px ;
top : 100px ;
}

6.4 absolute: 绝对定位: 清除元位置, 相对 非static

父,如果没有父就相对窗口

通常。 absolute relative 里面
<style>
.fa {
width : 600px ;
height : 600px ;
border : 1px solid black ;
position : relative ;
}
.fa div {
width : 100px ;
height : 100px ;
}
.fa > div : nth-of-type ( 1 ) {
background-color : red ;
}
.fa > div : nth-of-type ( 2 ) {
background-color : green ;
position : absolute ;
left : 100px ;
top : 30px ;
}
.fa > div : nth-of-type ( 3 ) {
background-color : blue ;

}
</style>
<div class = "fa" >
<div> 1 </div>
<div> 2 </div>
<div> 3 </div>
</div>

7. 浏览器兼容样式:

-webkit: chrome 谷歌内核
-moz 火狐浏览器
-ms-: IE 浏览器

8. 其他

8.1 浮动:float用于 块的横向显示用

left/right: 左浮动,右浮动。
一定要清除浮动 clear:
both: 清除左浮动 + 右浮动
left/right:
<style>
.fa {
width : 600px ;
height : 600px ;
border : 1px solid black ;
position : relative ;
}
.fa div {
width : 100px ;
height : 100px ;
/* float: left; */
/* float: right; 右内容是发过来的 */

}
.fa > div : nth-of-type ( 1 ) {
background-color : red ;
float : left ;
}
.fa > div : nth-of-type ( 2 ) {
background-color : green ;
float : left ;
}
.fa > div : nth-of-type ( 3 ) {
background-color : blue ;
float : right ;
}
</style>
<div class = "fa" >
<div> 1 </div>
<div> 2 </div>
<div> 3 </div>
<p style = "clear:both" ></p>
<p> hello p </p>
</div>

8.2 盒子模型

margin: 外边距
padding: 内边距
border: 边框

边框 1px width:100px
100 + 1 + 1 = 102 * 102
margin 不会修改标签宽度
padding:10px:
标签宽度 = width 100 + 内填充 + 边线
100 + 10 + 10 + 1 + 1 : 标签宽高 122*122
怪异盒子解决标签宽度问题
box-sizing: border-box:
width:100 = 内容 + 内填充 + 边线 (自动计算)
<div style = "width: 100px;height:100px;border: 1px solid black;margin:
10px;padding: 10px;box-sizing: border-box;" >
helloworld
</div>

8.3. 伸缩盒子:display: flex;

display:flex: 默认横轴
flex-direction:
row 横轴, row-reverse 倒序
column 纵轴 column-reverse: 倒序
justify-content: 内容的对齐方式
flex-start: 开始,横轴居左 纵轴居右
center
flex-end; 结束。
space-around : 空白在两端, 包围
space-between: 标签在两端,空白在中间
space-evenly 平均分配空白
align-items 另外一个轴的对齐方式。
<style>
.fa > div {
width : 100px ;
height : 100px ;
border : 1px solid black ;
}
.fa {
/* 默认是横轴 */
display : flex ;
/* row 横轴, column 纵轴 */
flex-direction : column ;
height : 900px ;
align-items : center ; /* 另外一个轴的布局方式 */
/* 主轴的 布局方式
flex-start: center flex-end; 传统
space-around : 空白包围
space-between: 空白在中间
space-evenly : 平均分配空白
*/
justify-content : center ;
}
</style>
</head>
<body>
<div class = "fa" >
<div> 1 </div>
<div> 2 </div>
<div> 3 </div>
<div> 4 </div>
<div> 5 </div>
</div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值