web前端html定位层的特点:
完全脱离默认文档流,独立于立体层面的Z轴之上。和float浮动一样都脱离了默认文档流。但float元素与默认文档流之间会相互产生影响,而定位层元素则完全独立互不干扰。
让元素inline-block化:例如一个div标签默认宽度是100%显示的。但是一亘变成absolute绝对定位,则默认独占一行的宽度就会变成自适应内部元素的宽度。通常当我们将HTML元素设置成了定位层之后,就需要指定其宽度和高度。
绝对定位与相对定位的区别:absolute元素完全脱离默认文档流,不保留占位空间。relative元素不脱文档流,元素仍然占据原来的空间。因此,移动元素会导致它覆盖其他框。
实际应用方案:
将relative相对层(父级)和absolute绝对层(子级)结合一起使用。实现某些栏目或板块中,内容元素的重叠或位移效果。如下图是以各个小板块作为参照物(相对定位)。以箭头的小图标作绝对定位position:absolute。当然也有绝对定位加绝对定位现实。
相对层+绝对层的应用技巧:
1、在页面中给某个元素(父级对象)设置相对定位,使其成为所包含的子级对象的定位参照物。通常不设置其具体定位位置,保留其占据默认文档流空间的特性,不妨碍整体布局。
2、相对层对象的内部,添加子级对象设置绝对定位,然后用相关定位属性控制其位置,以实现重叠或位移效果。
3、如果父级(无限)没有设定position属性,那么当前的absolute则结合top,right,left,bottom属性以浏览器左上角为原始点进行定位。
4、如果父级(无限)设定position属性,且属性值为relative、absolute、fixed,那么当前的absolute则结合top,right,left,bottom属性以父级(最近)的左上角为原始点进行定位。
定位层absolute+relative应用实例代码如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>相对层+绝对层实例应用</title> <style> * { margin: 0; padding: 0; } .ht5 { width: 388px; border: 1px solid #ddd; position: relative; } .ht5 img { width: 388px; height: 208px; vertical-align: middle; } .ht5 p { margin: 5px 0; color: #666; text-align: left; } .ht5 .ke { width: 100px; height: 30px; line-height: 30px; text-align: center; color: #fff; background-color: #F17D48; position: absolute; left: 0; top: 0; } </style> </head> <body> <div class="ht5"> <img src="http://img.bokequ.com/wp-content/uploads/2016/01/233.jpg" alt="web前端课程"> <p>web前端课程--知识点HTML、CSS、PHP、JavaScript(零基础快速入门到制作企业站视频课程)</p> <div class="ke">web前端课程</div> </div> </body> </html>
评论