day4 css布局相关属性

day4 css布局相关属性

一、伪类选择器

<!-- 
    1. 伪类选择器
    普通选择器选中的是标签,伪类选择器选中的是标签的状态
    
    css语法:普通选择器{属性:属性值;}、伪类选择器{属性:属性值;}
    
    2. 伪类选择器语法: 
    普通选择器:状态{}
    
    3. 常用状态
    hover  -  鼠标悬停(鼠标在标签上的时候对应的状态),针对所有标签有效
    active -  鼠标在标签上按下,针对所有标签有效
    link - 超链接链接未访问状态,只针对a标签有效
    visited - 超链接已经访问后对应的状态,只针对a标签有效
    
    爱(LoVe)恨(HAte)原则:如果同一个a标签要同时设置上面四种状态的样式,需要遵守爱恨原则,否则有些样式可能无效
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
       
        <style type="text/css">
           
            a{
                color: #999999;
                font-size: 12px;
                /* 去掉a标签自带的下划线 */
                text-decoration: none;
            }
            
            #a1:hover{                  /*鼠标悬停*/
                color: crimson;
                /* 添加下划线 */
                text-decoration: underline;
            }
            
            #a1:active{
                color: green;
            }
            
            
            div{
                width: 200px;
                height: 100px;
                background-color: #E5E5E5;
               
            }
            #div0>p{
                color: rgb(101,132,79);
                font-weight: 800;
            }
            
            #div0>span{
                color: rgb(90,90,90);
                font-size: 12px;
                font-weight: 700;
            }
            
            #div0:hover{
                background-color: #dddddd;
                /* 将光标变成手指 */
                cursor: pointer;
            }
          
        </style>
        
       
	</head>
	<body>
        
        <a id="a1" href="https://wj-dongjian.jd.com/q/61a05143f2ec2b00b35e40a6">登录页面,调查问卷</a>
        <a href="">百度</a>
        
        <div id="div0">
            <p>【学习HTML5】</p>
            <img src="img/Unknown" >
            <span>HTML5是下一代HTML标准</span>
        </div>
	</body>
</html>

二、常用状态补充

<!-- 小说的章节目录,没有访问是一种颜色,访问后是另外一种颜色 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
        <style type="text/css">
            #div1>a:link{
                color: #DC143C;
            }
            #div1>a:visited{
                color: #008000;
            }
        </style>
	</head>
	<body>
        <div id="div1">
            <a href="https://www.baidu.com">第一章</a>
            <a href="https://www.jd.com">第二章</a>
            <a href="https://www.51job.com">第三章</a>
        </div>
	</body>
</html>

三、标准流布局

<!-- 
  1.标准流
  标签在没有添加布局相关属性的时候,默认的布局方式就是标准流布局。
  
  2.标准流布局的基本原则
  在标准流中,根据标签表现方式的不同,将标签分为三种:块级标签、行内标签、行内块标签
  1)块级标签:一个占一行;设置宽高有效;默认宽度是父标签的宽度,默认高度是内容的高度。
             例如:h1~h6、p、div、ul、li、...
  2)行内标签:一行可以有多个;设置宽高无效;默认宽度是内容的宽度,默认高度是内容的高度。
             例如:a、span、b、i、label
            
  3)行内块标签:一行可以有多个;设置宽高有效;默认宽度是内容的宽度,默认高度是内容的高度。
              例如:img
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
        <!-- 1.块级标签 -->
        <h1 style="background-color: lightblue; width: 200px; height: 70px;">我是标题1</h1>
        <h1>我是标题1</h1>
        
        <p style="background-color: lightgoldenrodyellow; width: 300px; height: 100px;">我是段落1</p>
        <p>我是段落1</p>
        
        <div style="background-color: khaki;">
            我是div1
        </div>
        
        <div>
            我是div2
        </div>
        
        <!-- 2.行内标签 -->
        <a href="" style="background-color: skyblue; width: 300px; height: 100px;">我是超链接1</a>
        <a href="" style="background-color: salmon;">超链接2</a>
        
        <!-- 3.行内块 -->
        <img src="img/b.png" style="width: 300px;">
        <img src="img/b.png" style="">
	</body>
</html>

四display属性

<!-- 1.display属性
 在标准流中,可以通过修改display属性值来改变标签的性质
 inline: 行内
 inline-block: 行内块
 block: 块
 none: 隐藏标签
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
        <p style="background-color: lightblue; display: inline; width: 200px;">我是段落1</p>
        <p style="background-color: lightcoral; display: inline-block; width:200px;">我是段落2</p>
        <a style="background-color: hotpink; width: 200px; display: block;">我是超链接1</a>
        
        <a href="">我是超链接2</a>
        <a id="a1" href="" style="display: none;">我是超链接3</a>
        <a href="">我是超链接4</a>
        <br><br>
        
        <button type="button" onclick="show()">显示</button>
        <script type="text/javascript">
            function show(){
                a1 = document.getElementById('a1')
                a1.style.display = 'inline'
            } 
        </script>
        
	</body>
</html>

五、脱流

<!-- 
    1.脱流 - 脱离标准流布局
    标签一旦脱流,所有的标签的表现方式都和行内块一样:一行可以显示多个;设置宽高有效;默认大小是内容大小
    
    2.脱流的方法
    1)浮动
    2)定位
 
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
        
	</head>
	<body>
        <div id="div0">
            我是div1
        </div>
        <div id="div1" style="background-color: lavender;">
            我是div2
        </div>
        <style type="text/css">
            div{
                background-color: sandybrown;
                /* width: 300px;
                height: 200px; */
                /* float: right; */
            }
            
            #div0{
                position: fixed;
                left: 100px;
                width: 200px;
            }
            
            #div1{
                position: fixed;
                left: 100px;
                top: 100px;
            }
        </style>
	</body>
</html>

六 浮动

<!-- 
 1. 浮动的应用场景
    1)让竖着显示的标签横着来
    2) 文字环绕
    
 2.浮动: float属性
    left  -  左浮动
    right -  右浮动
    
    
 
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
        <!-- 1. 浮动基本功能1 - 左浮动 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 150px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #box1>div{
                float: left;
            }
        </style> -->
        
        <!-- 2. 浮动基本功能2 - 右浮动 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 150px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #box1>div{
                float: right;
            }
        </style> -->
        
        <!-- 3. 浮动基本功能3 - 高度塌陷 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 200px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #div1{
                float: left;
            }
        </style> -->
        
        <div id="div1" style="background-color: red; width: 100px; height: 100px;"></div>
        <div id="div2" style="background-color: green; width: 200px; height: 150px;"></div>
        <div id="div3" style="background-color: blue; width: 200px; height: 150px;"></div>
        <a style="display: inline-block; width: 200px; height: 100px; background-color: yellow;"></a>    
        </div>
        <style type="text/css">
            #div2{
                float: left;
            }
        </style>
        
	</body>
</html>

七、页面整体布局

<!-- 
 1. 浮动的应用场景
    1)让竖着显示的标签横着来
    2) 文字环绕
    
 2.浮动: float属性
    left  -  左浮动
    right -  右浮动
    
    
 
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
        <!-- 1. 浮动基本功能1 - 左浮动 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 150px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #box1>div{
                float: left;
            }
        </style> -->
        
        <!-- 2. 浮动基本功能2 - 右浮动 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 150px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #box1>div{
                float: right;
            }
        </style> -->
        
        <!-- 3. 浮动基本功能3 - 高度塌陷 -->
        <!-- <div id="box1">
            <div id="div1" style="background-color: #008000; width: 150px; height: 80px;"></div>
            <div id="div2" style="background-color: gold; width: 200px; height: 80px;"></div>
        </div>
        
        <style type="text/css">
            #div1{
                float: left;
            }
        </style> -->
        
        <div id="div1" style="background-color: red; width: 100px; height: 100px;"></div>
        <div id="div2" style="background-color: green; width: 200px; height: 150px;"></div>
        <div id="div3" style="background-color: blue; width: 200px; height: 150px;"></div>
        <a style="display: inline-block; width: 200px; height: 100px; background-color: yellow;"></a>    
        </div>
        <style type="text/css">
            #div2{
                float: left;
            }
        </style>
        
	</body>
</html>

八、文字环绕

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
        <!-- 文字环绕:被环绕的标签浮动,提供文字内容的标签不浮动 -->
        <div id="content" style="float: left;">
            <img src="./img/qingwa.png" >
        </div>
        <div id="text">
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
            <a href="">超链接1</a>
        </div>
	</body>
</html>

九、定位

<!-- 1.定位 -  通过设置间距来达到定位的目的
 定位相关属性有两类:
 1)选择参考对象:position
   absolute(寻找参考对象) - 将第一个position的值不为默认值(initial/static)的父标签作为距离的参考对象.  绝对定位,不占据原来的位子
   relative(让自己成为参考对象) - 相对自己在标准流中的位置定位;一般设置relative是为了让自己有能力成为子标签的参考对象
                                 相对定位,占据原来的位置
   
   fixed - 相对浏览器定位
 
 2)设置距离:left、right、top、bottom
 -->

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
        <style type="text/css">
            #div2{
                position: relative;
            }
            #div1{
                position: absolute;
                right: 50px;
            }
            
            #div4{
                position: fixed; 
                right: 10px;
                bottom: 10px;
            }
            
        </style>
	</head>
	<body>
        <div id="div3" style="background-color: red; width: 800px; height: 2800px; position: relative;">
            <div id="div2" style="background-color: blue; width: 400px; height: 440px; position: relative;">
                <div id="div1" style="background-color: yellow; width: 100px; height: 40px;"></div>
            </div>
        </div>
        
       <div id="div4" style="background-color: deeppink; width: 100px; height: 60px;">
           
           
       </div>
        
	</body>
</html>

十盒子模型

<!-- 
    1. 盒子模型
    任何一个可见的标签都是由三个部分组成:content(内容)、padding(内边距)、margin(外边距)
    
    1)content  -  设置标签的宽度和高度只影响内容大小;标签的内容和子标签都是显示在内容部分的
    2)padding  -  有四个方向;是可见的;设置背景会同时作用域padding、content
    3)margin  -  有四个方向;不可见,但是占位置
 -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
        
        <style type="text/css">
            #div1{
                /* 1.四个方向的内边距一起设置 */
                padding: 10px;
            }
            
            input{
               background: url(./img/b.png) no-repeat 0 center rgba(0,0,0,0); 
               /* 2.单独设置四个方向的内边距 */
               padding-left: 30px;
               padding-top: 10px;
               padding-bottom: 10px;
               
               /* 3.四个方向的外边距一起设置 */
               /* margin: 50px; */
               
               /* 4.单独设置四个方向的外边距 */
               margin-top: 50px;
            }
        </style>
	</head>
	<body>
        <div id="div1" style="width: 100px; height: 60px; background-color: #DC143C;">
            你好!水电费卡就好客家话
        </div>
        <input type="" name="" id="" value=""/>
        <a href="">我是超链接</a>
	</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值