前端学习笔记 CSS布局

1、绝对定位

属性:position
值: absolute
会将该元素从原文档删除,重新给它指定一个位置。(原来的位置就被其他东西占了)
通过指定left,top绝对定位一个元素,绝对定位是基于最近的一个定位了的父容器。

绝对定位可能会造成谁把谁掩盖了的问题,这时候可以使用z-index属性,当z-index的值越大,就表示放上面,z-index:越小就表示放下面。

2、相对定位

相对定位
属性:position
值:relative

与绝对定位不同的是,相对定位不会把该元素从原文档删除掉,而是在原文档的位置的基础上,移动一定的距离。(这样它原来所处的位置还留着空。)

3、浮动

浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
属性:float
值: left,right

 

向右浮动后,原来的“坑”就让出来了,别的会填上来。
并且是在原来的高度的基础上,向右浮动

向左浮动后,也是原来的坑让出来了,那么下面的文字内容就想来占这个坑,但是突然发现 我是向左浮动的,我并没有让出这个坑,于是下面的内容就只有排在我的右边了。

利用上面的这一点可以让文字在右边围绕着图片。

若不想要围绕着浮动的元素,可以把上来占位的元素设置clear:left属性

 

还有! div标签默认是换行的
如果使用float就可以达到水平排列的效果,通常会用在菜单,导航栏等地方
如果超出了父容器,还会有自动换行的效果

div#floatingDiv div{
   float:left;
}

4、显示方式

display:none

隐藏

隐藏起来,不占原来的位置
display:block

块级

自动换行,而且width和height能生效

display:inline

内联

没有换行,而且width和height不会生效
display:inline-block

内联-块级

需要同一行,并且还能指定大小

5、水平居中 

内容居中有两种法:

①:设置align=“center”属性

②:设置样式text-align:center

元素居中:

 

比如div标签一样的块元素,默认100%的宽度,就无法居中,但是若是设置了宽度,再使用样式margin:0 auto就可以居中

但如果是内联元素,无法设置宽度,就不能通过margin:0 auto来居中。

6、左侧固定

<style>
 .left{
   width:200px;
   float:left;
   background-color:pink
  }
  .right{
    overflow:hidden;
    background-color:lightskyblue;
  }
</style>
 
<div class="left">左边固定宽度</div>
 
<div class="right">右边自动填满</div>

左右固定,填充中间,也是同样的方法,利用overflow去掉中间元素的溢出实现自适应。

6、垂直居中

就是在一个元素内将内部内容垂直居中,可以用样式line-height设置个值来垂直居中。

也可以通过设置上下相同的内边距来实现垂直居中效果。padding : 30 0

7、贴在下方

需要把一个内层元素设置成绝对定位,然后设置bottom:0就行了,无论怎样都贴在下面。

练习:

实现如图:



<style type="text/css">
	body{
	    font-family:"宋体";
	    font-size:13px;
	    color:#666666;
	    width:643px;
	    }
	#shang{
		padding: 5 0;
		position: relative;
		height: 30px;
	}
	#zuoshang{
		float: left;

	}
	#sz{
		float: right;
	}
	#youshang{
		float: right;

	}
	.underline{
		position: absolute;
		bottom: 0;
		 width: 100%;
		border-bottom-color: AAAAAA;
		border-bottom-style: solid;
		border-bottom-width: 2px;
	}
	#xia{
		top: 20px;
		height: 230px;
		position: relative;
	}
	#zuo{
		float: left;
		width: 50px;
		height: 200px;
	}

	.chaolian{
		text-decoration: none;
	}
	#cha{
		float: right;
	}
	#renshu{
		position: absolute;
		top: 42px;
		left: 7px;
		color: AAAAAA;
	}
	#two{
		font:normal bold 微软雅黑;
		color: rgb(0,0,245);
		margin-bottom: 10px;
	}
	#three{
		margin-bottom: 10px;
	}
	#qixie{
		float: left;
	}
	#text{
		font-size: 120%;
	}
</style>
<body>
	<div id="shang">
	<img id="zuoshang" src="C:/Users/msi-/Desktop/work/img/1.png">
	<span>最新动态</span>
	<span id="sz">设置</span>
	<img id="youshang" src="C:/Users/msi-/Desktop/work/img/2.png">
	<div class="underline"></div>
</div>

<div id="xia">
	<div id="zuo">
		<img src="C:/Users/msi-/Desktop/work/img/4.png">
		<br>
		<img src="C:/Users/msi-/Desktop/work/img/5.png">
		<span id="renshu">6657</span>

	</div>
	<div id="you">
		<div id="one">
			热门回答,来自 机械 
			<a class="chaolian" href="#">关注话题</a>
			<img id="cha" src="C:/Users/msi-/Desktop/work/img/3.png">
		</div>
		<div id="two">
			人类史上令人叹为观止的极限精度制造成果有哪些?
		</div>
		<div id="three">
			<b>Vincent Fu</b>, Materials Science,PhD
		</div>
		<img id="qixie" src="C:/Users/msi-/Desktop/work/img/6.png">
		<p id="text">
			说到精度,就不得不提在材料学中最重要的一个方面:表征。要项研究一种材料性能,握在手里把玩时远远不够的,就算你拿出放大镜离近了看,也只能看到表面的一些坑坑洼洼,而为了知晓一种材料的纤维结构,科学家至少要下到纳米级(放大千倍),如果要获得更深...<a class="chaolian"href="#">显示全部</a>
		<div id="four">
			<img class="lasttu" src="C:/Users/msi-/Desktop/work/img/7.png">
			<span>关注问题</span>
			<img class="lasttu" src="C:/Users/msi-/Desktop/work/img/8.png">
			<span>867条评论</span>
			<img class="lasttu" src="C:/Users/msi-/Desktop/work/img/9.png">
			<span>作者保留权利</span>
		</div>
	</div>
	<div class="underline"></div>
</div>


</body>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个文档包含了HTML/css的一些基础,还有JavaScript中的基础语法、DOM、BOM还有一些学习js中面向对象、和移动web开发、AJAX、jQuery的一些总结,还有些Web前端与移动开发面试宝典; 6、什么是事件冒泡/捕获? 事件冒泡: 事件到达事件目标之后不会结束,会逐层向上冒泡,直至document对象,也就是子元素事件的触发会影响父元素的事件; 开关事件冒泡: A,开启事件冒泡:event.addEventListener(eventName,handler,false); B,关闭事件冒泡:假设传统方式事件的返回值为e,就可以通过e.stopPropagation()来关闭事件冒泡; C ,return false; 同时具有阻止冒泡和阻止默认行为的功能 事件捕获:父元素的事件会影响子元素的事件; 开启事件捕获:event.addEventListener(eventName,handler,true) 7、请说说事件委托机制?这样做有什么好处? 事件委托,就是某个事件本来该自己干的,但是自己不干,交给别人来干。就叫事件委托。 打个比方:一个 button对象,本来自己需要监控自身的点击事件,但是自己不来监控这个点击事件,让自己的父节点来监控自己 的点击事件。 优点: A,提高性能:列如,当有很多li同时需要注册事件的时候,如果使用传统方法来注册事件的话,需要给每 一个li注册事件。然而如果使用委托事件的话,就只需要将事件委托给该一个元素即可。这样就能提高性能。 B,新添加的元素还会有之前的事件; 11、怎么理解jQuery? JQuery就是JavaScript和查询(Query),是一个Javascript库。可以用来操作文档对象、 选择DOM元素、制作动画效果、事件处理、使用Ajax等。 优点: a、轻量级 b、具有强大的选择器 c、封装了大量的DOM操作 d、事件处理机制相当可靠 e、完善的Ajax f、不污染顶级变量 g、出色的浏览器兼容性 h、链式操作方式 i、隐式迭代 j、行为与结构分离 k、支持丰富的插件 l、完善的文档 m、开源 12、Jquery.on这个方法怎么看? 答: jQuery.on()方法可以给匹配元素(可以是多个)绑定一个或多个函数, off 可以解除绑定

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值