web初学 CSS(层叠样式表)二

八、CSS盒子模型:

0、基本常识:

    0.1 盒子模型的简介:

     0.2  盒子标签不仅仅只有div 与 span ,p 和 h1 标签等 也是 当做盒子处理 

     0.3  盒子对属性定义时 是 整个盒子生效的,它可以用CSS将 行级元素 居中 :

  0.4 清空 margin padding border 格式 遇到的问题:

       (1) 格式化代码:

*{
    margin:0px;padding:0px;border:0px;
 }   /*-------  所有内容 格式化。*/

     (2) 格式化带来的问题:body标签格式化后 没有 margin border ,body 内部的 div margin 时会带动 全部 的body 标签向下移动  --  解决方法:

            方法一:设置 上边框 的大小   ------------------- 

            方法二: 加上overflow 属性 -------------------    

   0.5 行级元素与块级元素及相互转化:

      (1)块元素: 居中 调整位置用 margin padding

      (2)行内元素: 居中 调整位置 用 text-align 、line-hight  或者 将其 转化 为块元素 用 margin padding 操作

                   注意:并非所有的行内元素不可设置高度,例如:img标签 

         (3)行内块元素: 调整位置用 margin padding

                ① 用 display 和 float (无序列表ul转化为 行内块模式)转化为 行内块 元素。

                ② 常见的行内块元素:

                      input  ----   它是 典型的行内块元素.

           例:无序列表 ul 行内块 转化:用float:left 或 display:inline-block

       (4)行内块元素与块元素的相互转化:display 属性    

span{display:inline;}   ------------   将元素转化为 行内元素
span{display:inline-block;}   ----------- 将元素转化为 行内块元素(不过要用vertical-align 定义垂直对齐方式)
.span{display:none;} -----------  将元素 隐藏 并删除其占用空间
.span{visibility:hidden;}  -----------  将元素 隐藏 不删除其占用空间

span{display:block;} ------------ 将元素 转化为 块级元素

  1、div盒子模型(块级盒子 ------自动换行):

  (1)CSS 边框border属性:

 

      用法实例: 

                          

 (2) CSS 内边距 padding:

 

div.a{padding:10px 20px;}   ------- 当只写 两个参数时, 前面 --- 上下 ; 后面 --- 左右。
错误实例:div.a{padding:10px auto;}   -------  padding不能用 auto

  (3)CSS外间距 margin:

                      margin   与 auto 使用具有  居中的效果 ,注意 auto 写在 上下 是默认为 0

div.a{margin:10px 20px;}   ------- 当只写 两个参数时, 前面 --- 上下 ; 后面 --- 左右。
div.a{margin:10px auto;}   -------   上下 10px 左右 自动 居中,即 auto 左右 默认为 居中。
div.a{margin:5px auto 5px 200px} 

div.a{margin:auto 10px;}   ------- 上下 0px  左右 10px ,即 auto 上下 默认为 0px。 

  (4)设置背景 background:

           ① 设置背景颜色:

                       none 可以清空背景颜色:

           ②设置 背景图片:

.top1{width:200px;height: 200px;
    background-image: url("./images/bg_flower.gif"),url("./images/bg_flower_2.gif");     
    /* 同时设置多张背景图片,中间用  , 隔开*/
}

           ③设置 是否 填充:

            ④ 设置 图片位置:

            ⑤  设置 页面图像位置 固定:

            ⑥ 设置导入背景图像大小:

                 背景大小可以用 auto:

            ⑦ 综合 显示:

      (5)透明度 opacity :

                  

      (6)控制 标签 类型(行元素、块元素、行内块元素):display 属性     

    2、行内块 盒子模型 :

  •                   方法一: 1、 display:inline-block      2、vertical-algin:middle   ---------  设置行内块的 垂直对齐方式(只有                                        inline-block ,vertical-align属性才会起作用。 )
  •                   方法二: float:left    /     right    ------------------ 脱离文档流
  •                   方法三:    position:absolute   ------------------ 脱离文档流

      (1)常见的问题:

                   ① 格式化 行内块 生成时的间距:

       (2)案例:

                       注意 : 同一个盒子只能做一个背景图片,后续的背景图会覆盖前面的背景图(无论是否填充),因此,想要在一                                    个盒子中加入多个背景图片需要在该盒子内部加入子盒子

九、无序列表ul 和 有序列表 ol :

  •        列表的理解:块级盒子的集合(小型的body 标签)   ------- 内部元素都是块级元素

   1、无序列表:

     (1) ul 基本常识

           外观:               

           特点:自带 padding ,使用时 通常 清除 padding 。他可以 多层嵌套:    

                                    

      (2)ul 标签 自身的属性:

                      ① type 属性:

-------- html文件 ,这是标签内部属性 ,并非css 属性-----------
<ul type="none">
    <li>无序列表,前面没有标记</li>
</ul>

      (3) CSS中更改 type

---------------------------  CSS 文件-----------
ul{list-type:none;}    

  2、有序列表 ol :

    (1)基本常识:

                     代码 与 ul 类似 ,只是结果 可以排序。

    (2)ol 标签 本身的属性:

            属性:

          实例: 

十、html5/css3新标签:

                   https://blog.csdn.net/qq_16555103/article/details/85260716

十一、表单:form、input、select、textarea

 

                html5新增的表单标签: https://blog.csdn.net/qq_16555103/article/details/85260716

      form / input ( 非按钮标签,即需要提交内容) /textarea / select     --------------  必须有 name属性 , value 属性不必要

      input (按钮标签) -----------   value 属性尽量 有,name属性不必要 

   1、 创建表单:form  ------ 表单整体 提交

               提交地址  ① # --------- 表示提交到当前页面            ② "文件路径 "  -------------------  提交跳转到指定路径

               提交方式   ①  get  方式 , 暴露信息  ② post方式  不暴露信息

<form action="#" method="get" name="table1"></form>   -------- 创建表单,他是一个块级元素

   2、表单输入控件:input 标签  

            特点:它是 行内块 元素 ,可以设置 width 、height 

    (1)input 属性:type 、name 、value  ................ 

 

 

             ① type : 指定控件的 类型

             ② name:指定空间的名字。

             ③ value :默认 提交值 ,占用空间

             ④ placeholder:提示信息,不占用空间 (注意与 value的区别)

      常见问题:

                     1) 自身属性 checked=“checked” -------- 设置 默认选项 

<input type="radio" name="a1" value="提交的值1">展示给用户的值1</input>
<input type="radio" name="a1" checked="checked" value="提交的值2">展示给用户的值2</input>   --- 设置默认选项

                    2)在用复选框时,为了防止提交时 多个相同name 覆盖 ,习惯在 name 属性后加  [ ]  

                    4) 普通按钮 的两种形式:

                  5)图像提交:

 

   2、文本域 textarea:

           特点: 它是一个块级元素

           禁止textarea 可以 缩放   ------------> css 样式代码中添加: resize:none;

<textarea name="必写" clos="显示列数" rows="显示行数"></textarea>    ----------- clos、rows 可以用css样式代替。

 

  3、下拉菜单:select

    特点:它是一个行内块元素

   (1)基本用法:

   (2)自身的属性:

 

                                         

十二、浮动与定位:

  •          浮动的理解:
  •               浮动相当于分层,将浮动的元素从 文档流中取出 ,后面非浮动元素 填补 浮动元素 原来的位置(盒子模型会覆                       盖,文本不会覆盖)

    1、浮动:

      (1)浮动的方法:

                           浮动后 可以在 css 中用      z-index:整数    来设置浮动元素的层数。

     (2)清除浮动的方法:

                         ① clear 清除:

                                常常用于 同级 浮动 清除,以高度 最高的 基线为准。

 

                     ② 利用 父级盒子 的属性 : overflow:hidden; 

                     ③   添加伪元素的方法

   2、overflow 的用法:

 

 3、定位属性:position

     1、常见的定位模式:

 

     2、相对定位:relative   --------------------------  原文档流进行操作,占用原文档流的位置

           概念:相对于自身的 四个边 进行定位。

.small_div{width:100px;height: 100px;background: yellow;
    position: relative;       /* -------------  相对定位  */
    left:100px;
    top:80px;
}

      3、绝对定位:obsolute:-------------------  本质:脱离 原文档流进行操作,不占用原文档流的位置(z-index设置 浮动 层数)

         特点:

             ①  基于第一个 拥有  position: relative; 属性的父类 的四边 为基准 ,默认是 body。

             ② 元素会 脱离 原来的文档流(相当于浮动),其他元素 会填补 原来的空间(可以用clear清除浮动)

.small_div{
			width:100px;
			height: 100px;
			background: black;
			/* 设置过绝对定位后,文档会脱离原来的文档流 默认是以body作为定位依据,如果该div任意上级有定位属性,那么会以他为基础定位 */
			position:absolute;        
			bottom:0px;
			right:0px;
			z-index:1; /* 设置  浮动  层级 数值越大,越靠前 */
}

       4、固定定位:-------------------- 本质:浮动

.ad{
			width:100px;
			height: 100px;
			background: red;
			position:fixed;           /*-------------- 固定定位 */
			/*  水平垂直居中 */
			top:0;
			left:0;
			right:0;
			bottom: 0;
			margin:auto auto;
		}

十三、利用 标签的伪类 制作 悬浮特效:

          特点:只能做简单的悬浮特效,网页 悬浮特效 只要用 jquety 的 hover 和 mouseover 事件来做

         a 标签 的 伪类 :https://blog.csdn.net/qq_16555103/article/details/83573279#t11

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值