前端全栈学习笔记第七天 - CSS

1:元素的显示与隐藏(display有两个默认属性,inline,block),隐藏之后不保留位置

为什么显示不用inline?因为一旦没文字,用inline就什么也不会显示。

display(显示):block除了转化为块级元素,同时还有显示元素的意思

visinility:可见性

visible:显示

hidden:影藏

特点:隐藏之后,保留原来位置

案例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
    .header {
        width: 592px;
        height: 355px;
        margin: 100px;
        position: relative;


    }

    .dis {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, .5) url(img/left.png) no-repeat center;
        display: none;
    }

    .header:hover .dis {
        display: block;
        /*鼠标经过header,header里面的dis就显示出来,所以这里用后代选择器*/
    }
    </style>
</head>

<body>
    <div class="header">
        <img src="img/ha.png">
        <div class="dis"></div>
    </div>
</body>

</html>

当鼠标经过,会出现阴影

注意

 

做一个总结

a:首先要有一个盒子,来包裹里面的图片。这时,图片的大小,就是盒子的大小,而且这个盒子要有相对定位

b:图片正常顺序放就好

c:接下来是阴影部分。阴影部分是通过定位,而且是子绝父相,宽高100%,将背景定位到图片上面。这里还有一个妙用,就是将背景和图片写在一起

        background: rgba(0, 0, 0, .5) url(img/left.png) no-repeat center;

d:显示。这里虽然很简单。但是却有很大的一个坑!鼠标先放在盒子上面,然后阴影显示,所以 是 .header:hoer .dis

2:overflow : hidden

显示影藏

3:鼠标样式

cursor:pointer 小手

default :小白

move : 移动

text : 文本

pointer :小手

4:鼠标轮廓

outline : node

防止拖拽:resize:none

5:图片三像素问题

a:

 

 

当我们图片和文字放在一起时,会出现一个小缝隙。原因是图片和边框是基线对齐,文字和框框是底线对齐。这事我们可以给img添加

img{
            vertical-align: bottom; 或者top,center,bottom只要不要让他用baseline(基线)对齐就行,而这个又是默认的!
        }

 vertical不隐想块级元素,只针对行内块和行内元素,用来控制图片,文字,表单的对齐

这样就没有间隙了如果没有文字,你会发现还是有小奸细。

 

 

 

这是因为图片img标签是行内块元素,有间隙这个bug,我们只需要把它转换为快元素就行了

6:溢出的部分用省略号表示

 

 

white-space: nowrap;
        /*强制在一行显示所有文字*/
        overflow: hidden;
        /*超出部分隐藏*/
        text-overflow: ellipsis;
        /*溢出的部分用省略号代替*/


缺一不可

7:精灵图的本质

为了有效的减少服务器接受和发送请求的次数,提高页面加载速度,出现了css精灵图

将多个背景图放在一张大图上。

8:精灵图使用

背景图,不能做插入图

background :url() no-repeat 偏移量

要做多个精灵图,可以做一个集体声明

 

9:滑动门

滑动门标准写法:

a标签嵌套span标签

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		a{
			height: 50px;
			margin: 100px;
			background: url(img/to.png) no-repeat;
			padding-left: 15px;
			display: inline-block;
			line-height: 50px;		
		}
		span{
			height: 50px;
			background: url(img/to.png) no-repeat right;
			padding-right: 15px;
			display: inline-block;
			line-height: 50px;
			color: white;
		}
	</style>
</head>
<body>
	<a href="">
		<span>首页</span>
	</a>
</body>
</html>

 

效果图

会自动撑开盒子。原理解释

a:滑动门是通过两个标签相互配合来实现,a标签的作用是只要你点击这个框框,他就会有效果,里面放的是和sapn一样的背景图片。a不用设置宽度,应为本身就是要自动撑开的效果,但是需要高,为了和span的保持一致。设置了高,就必须设置display,应为这样高才其效果(如果图片就是本身的尺寸,不设置高也行)

b:span标签和a标签解释差不多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值