分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

css百分比参照大总结

发布时间:2023-09-06 01:17责任编辑:沈小雨关键词:暂无标签

最近做PC端项目,由于要自适应到800*600,所以免不了要使用百分比的布局方式,但是一开始有点搞不清楚百分比的参照,于是页面的布局怎么调也调不好。

事后我进行了一下总结,希望能够帮到大家:

参照父元素宽度的元素:padding margin width text-indent

参照父元素高度的元素:height

参照父元素属性:font-size   line-height

特殊:相对定位的时候,top(bottom)   left(right)参照的是父元素的内容区域的高度与宽度,而绝对定位的时候参照的是最近的定位元素包含padding的高度与宽度

下面给一个demo:

先上代码:

<!doctype html><html lang="en"><head> ???<meta charset="UTF-8"> ???<title>Document</title> ???<style type="text/css"> ???????*{ ???????????margin: 0; ???????????padding: 0; ???????} ???????.box{ ???????????position: relative; ???????????margin-bottom: 10%; ???????????width: 100px; ???????????height: 100px; ???????????padding: 20px; ???????????border: 4px solid blue; ???????????background: red; ???????} ???????.box>.relative-ele{ ???????????z-index: 1; ???????????position: relative; ???????????top: 100%; ???????????left: 100%; ???????????width: 10%; ???????????height: 10%; ???????????padding: 10%; ???????????border: 4px solid yellow; ???????????background: blue; ???????} ???????.box>.absolute-ele{ ???????????z-index: 1; ???????????position: absolute; ???????????top: 100%; ???????????left: 100%; ???????????width: 10%; ???????????height: 10%; ???????????padding: 10%; ???????????border: 4px solid yellow; ???????????background: blue; ???????} ???</style></head><body><div class="box"> ???<div class="relative-ele"></div></div><div class="box"> ???<div class="absolute-ele"></div></div></body></html>

父盒子盒模型与相对定位的子盒子的盒模型:

可以看出来相对定位的盒子的百分比定位的top和left值是参照父元素内容的宽度和高度,而不包括padding

父盒子盒模型与绝对定位的子盒子的盒模型:

可以看出来绝对定位后,盒子大小都发生了改变,也就是说子盒子绝对定位之后top和left值会参照最近的定位盒子的padding-box来进行计算,所有大小的计算都要包括父盒子的padding值

附带一点:就是ie7相对定位的参照点不太一样,它参照的是父元素内容的左上角,不包含padding

css百分比参照大总结

原文地址:http://www.cnblogs.com/wherep/p/7666220.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved