div+css盒子模型

 

 

css是什么?

层叠文本框(后面的会覆盖前面的)

css的引入方式

(在哪里写css) 

1.行内式:给块级标签中添加style属性。

2.嵌入式:使用style标签,style标签中添加css注释。

3.外联式:创建新的css页面,通过link标签连接到css页面。

 

选择器

作用:查找标签,设置标签样式

使用:选择器{css属性名:属性值;}

1.标签名选择器:选择所有此标签名的标签

2.类选择器:.类名{css属性名:属性值;}  所有标签都有类名,可以设置为数字字母中划线下划线,不能以数字和中划线开头,标签的类名可以重复,一个类选择器可以选择多个标签。

3.id属性值选择器 :#id属性值{css属性名:属性值;}所有标签都具有id属性值,id属性值是唯一的,一个id属性值选择器只能选择一个标签。

深入探讨

一个元素可以有同时有id选择器和类选择器(id选择器的优先级高)。

一个元素只能有一个id选择器,但可以有多个类选择器。

当两个类选择器发生冲突了,则以写在css文件中的后面的那个类选择器为准。

id选择器复用性比较低,优先级比较高,唯一使用。如果某个样式只是给某一个html元素使用,则选择id选择器;如果某个样式可能给多个html元素使用,则应当选择class选择器。

父子选择器

父子选择器可以有多级(实际开发过程中不要超过三级)。

父子选择器有严格的层级关系。

类选择器和id选择器都可以有父子选择器。

对某行个别文字使用嵌套风格时,使用父子选择器非常方便。

4.通配符选择器

字体和文本样式

1.字体大小:font-size 数字+px 浏览器默认字体大小为16px 1em

2.字体宽度:font-weight 400 bold700

3.字体样式:font-style normal italic

4.字体 :font-family 微软雅黑 宋体

5.复合样式:可以设置多个属性值,用空格隔开

1.文本缩进:text-index 

2.文本对齐:text-align(设置大标签对齐 )

3.文本修饰:text-decoration(设置下划线)(用来清除超链接的下划线)

1.行高:line-height 行高包括上下间距和文字高度 (

设置内容居中:margin:auto 0

颜色的设置:

1.十六进制表示法:#f00 2.rgba(红黄蓝三原色0-255 透明度0-1)

选择器进阶

关系选择器

1.子元素选择器:选择父元素中此标签的子元素  用空格隔开

深入探讨

父子选择器

父子选择器可以有多级(实际开发过程中不要超过三级)。

类选择器和id选择器都可以有父子选择器。

对某行个别文字使用嵌套风格时,使用父子选择器非常方便。

2.包含选择器:选择父元素中包含的所有子元素  用>链接

3.并集选择器:选择多组标签,设置相同的样式  用逗号隔开

4.相邻元素选择器

5.兄弟元素选择器

属性选择器

1.匹配标签所有E[att='val'] 

2.匹配E标签有att属性 属性值包含val并且以空格隔开E[att~='val']

2.匹配E标签有att属性 属性值以val开头  E[att^='val'] 

3.匹配E标签有att属性 属性值以val结尾  E[att$='val']

4.匹配标签含有att属性 属性值包含val  E[att*='val'] 

5.匹配E标签 包含att属性 属性值以val开头且以-隔开E[att|='val'] 

结构选择器

checked:匹配页面中已经选中的元素

enabled:匹配页面中处于可用状态的元素(disabled)

only-child:匹配只有一个子元素的子元素

first-child:匹配第一个子元素

nth-child(3)(2n表示偶数,2n+1表示奇数):匹配父元素中的第3个子元素

nth-of-type(3):匹配页面中同类型元素中的第3个同级元素

伪对象选择器

before:要和content属性一起使用,表示在此标签中插入content中的内容

超链接伪类选择器

超链接

1.link:表示超链接被访问之前的样式

2.visited:表示超链接被访问之后的样式

1.hover:表示鼠标悬停在上面的样式

2.active:表示标签被激活之后的样式

css特性

1.继承性:子承父业 (文字控制属性)(a标签color属性失效 h标签font-size属性失效)

2.层叠性:不同的样式会层层叠加 相同的属性会被覆盖

优先级

特性:不同选择器由不同的优先级,优先级高的选择器样式会覆盖低的样式

解决一个标签匹配多个选择器,什么样式生效

公式:继承<通配符<标签<类<id<行内式<!important(加载分号之前,不要给继承添加)(选中范围越广,优先级越第)

页面布局

元素显示模式

块级元素:独占一行,可修改宽度高度,宽度为默认父元素的宽度,高度被内容撑开<h1> <div> <p> <ol> 

行内元素:不自动换行,不能设置宽高,宽度和高度都有内容撑开 <span><a><i><em>

行内块元素:一行可以显示多个,加宽高还能生效:<input><img><textarea><button>

转换:可以通过diaplay属性来转换 inline是行内元素默认属性值

(常用)block是块级元素的默认属性值,inline-block可设置为行内元素并可以修改宽度高度、行间距、对齐方式。

html嵌套注意点

1.块级元素一般作为容器,可以嵌套文本块级元素行内元素行内块元素(p标签不要嵌套p、div、h元素)

2.a标签可以嵌套任意元素标签(不要嵌套a标签)

页面模块:<header><nav><banner><content><footer>

 

<div>可作为容器使用,设置宽度高度之后可以作为盒子使用

背景颜色图片显示在盒子里

背景颜色 background-color 默认为透明transparent 

背景图片 background-image:url('图片路径') 

背景平铺:background-repeat:repeat-x(水平平铺)no repeat(不平铺,只显示一张背景图)

背景位置:background-position 1.方位名词(可以颠倒顺序) (水平方向)right left center (竖直方向)top bottom center 2.坐标系:数字+px(不能颠倒顺序)

左上角:0 0 (表示坐标原点)x轴:水平向右 y轴:垂直向下(可设置为负值)

 

盒子模型

概念:页面中的每一个标签都可以看作一个盒子 css中的盒子由内容(content)内边框区域(padding)边框区域(border)

 

外边框区域(margin)

1.内容的宽度和高度:width height 数字+px 

2.边框线:border 线条种类(实线solid虚线dashed点线dotted) 宽度 颜色     border-单方向设置

3.内边距:padding 数字+px 设置四个方向的边距(顺时针方向 三个值 左右相同 两个值 上下相同左右相同)

4.外边距:margin 设置方式同上

5.清楚默认内外边距

*{
margin:0;
padding:0}

版心居中:margin:0 auto

标准流

块级元素垂直排列 行内元素水平排列

浮动属性

作用:图文环绕,网页布局(快标签在一行排列)

表示:float right left center

特点:

1.浮动会脱离标准流,不在占标准流的位置

2.浮动元素优先级高于标准流,会盖住标准流元素

3.浮动标签默认顶对齐

4.浮动找浮动,下一个浮动会在上一个浮动左右

5.浮动后元素具有行内块的性质

css书写顺序(浏览器执行效率更高):浮动 盒子模型 margin padding border 宽度高度背景色 文字样式

清除浮动带来的影响

1.父子级标签,父级没有设置高度,子级浮动,给父级设置高度

2.额外标签法:给父级元素添加块级元素,给块级元素设置clear:both属性(清楚左右两侧浮动的影响)

3.单伪元素清除法:给父级元素添加标签(clearfix::after  content:'' clear:both 转换为块级元素)

.clearfix::after{
content:'';
diaplay:block;
clear:both;

4,双伪元素清除法:before解决外边距塌陷问题(父子级标签都是块级元素,子元素设置margin会影响父标签外边距塌陷)

.clearfix::before,.clearfix::after{
content:'';
diaplay:table;}
.clearfix::before{
clear:both}

5.给父元素设置overflow:hidden;属性

 

定位属性

作用:一般用于盒子层叠的情况,可以让元素自由的摆放在页面中任意位置

定位方式:position 常见属性:relative absolute fixed 设置偏移值(数字+px)(就近原则):水平(left right)竖直(top bottom)(之选择一个设置,先参考left和top位置)

相对定位的特点:占标准流的位置,改变位置相对与原来的位置,仍保持原来的表现模式

绝对定位:先找已经定位的父级,以此为参照物定位,没有就以浏览器为参照位。脱标,不占位。改变标签原有的表现模式,具备了行内块的特点。

父级采用相对定位,子级采用绝对定位 (父相子绝

绝对定位的盒子不能采用margin:0 auto版面居中

定位居中

{
left:50%;
/*把盒子移动到中间偏右的位置/
margin-left:-150px;
/*把盒子向左移动移动到宽度一半/
top:50%;
/*把盒子移动到中间偏下的位置/
margin-top:-100px;
/*把盒子向上移动到高度的一半/
{
left:50%;
top:50%;
transform:translate(-50%,-50%);
/位移:自己宽度高度的一半/
}

 案例:底部半透明定位效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
<style>
.banner{
poeition:relative;
width:1000px; 
height:500px;
margin:0 auto;
}
.mask
{width:1000px;
/*父子集宽度一样的话,可以设置width:100%)
height:100px;
background-color:rgba(0, 0 ,0,0.5)
position:absolute;
left:0;
bottom:0;



</style>
</head>
<body>
    <div class="banner">
        <img scr="../" alt="">
     <div class="mask"></div>
</div>
</body>
</html>




固定定位:position:fixed;

特点:脱标,不占位置;参考浏览器位置,具备行内块的特点

元素的层级关系

不同布局方式元素的层级关系:标准流<浮动<定位

不同定位之间:相对绝对固定相同,写在下面的元素会覆盖上面的元素

装饰属性

1.浏览器解析行内标签和行内块标签img input当作文字处理,基线对齐 ( 一般用于设置垂直对齐)

解决方式:可以直接转为块级元素

属性名:virtual-align 属性值:baseline top middle bottom (对齐方式)

<style>
input{
height:50px;
box-sizing:border-box;
virtual-align:middle;
}
</style>
<body>
<input typr="text"><input type="buttom" value="搜索">
</body>

2.光标类型

属性名:cursor   属性值:default(默认值,通常是箭头) pointer(小手效果,提示用户可以双击)

move(可以移动)text(文本,可以复制)

3.边框圆角

 border-radius 数值+px/百分比 从左上角赋值,顺时针赋值

应用:画一个正圆:盒子是正方形,边框圆角是盒子宽高的一半,border-radius:50%

胶囊按钮:盒子是长方形,边框圆角取值是高度一半

4.溢出  属性名:overflow 属性值:visible (溢出部分可见)hidden scroll (显示滚动条)auto (自动显示滚动条)

5.元素本身隐藏

visibility:hidden (占位隐藏效果)display:none(无占位隐藏效果)display:block恢复元素

6.透明    opacity0-1 

根目录:首页:index.html 图片文件夹:images 样式文件表:CSS

布局:从上到下 从左到右,从外到内

综合案例:学成在线项目

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.读入数据

 


总结

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值