您现在的位置是:网站首页> 编程资料编程资料
CSS margin全面了解_CSS教程_CSS_网页制作_
2021-09-12
1318人已围观
简介 下面小编就为大家带来一篇CSS margin全面了解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,祝大家游戏愉快哦
一、margin可以为负值
在盒模型中,内容区的width/height、padding、border都不能为负值,但是margin例外,它可以为负值。
关于margin负值的使用技巧,了解不多,日后有机会再补充,此处先贴一个经典应用,margin-left负值结合浮动实现不改变DOM结构的流体布局。
此demo与CSS float浅析篇中的是同一个。
XML/HTML Code复制内容到剪贴板
- >
- <html>
- <head>
- <meta charset="utf-8">
- <title>不改变DOM结构的流体布局title>
- <style>
- .container {
- width:600px;
- margin-left: auto;
- margin-right: auto;
- background-color: orange;
- font-size: 16px;
- line-height: 1.5;
- }
- .box1 {
- width:100%;
- float:left;
- }
- .box2 {
- margin-right: 220px;
- padding-left: 20px;
- }
- img {
- width:200px;
- float:left;
- margin-left:-200px;
- }
- .clearfix:after {
- content: "";
- display: table;
- clear: both;
- }
- .clearfix {
- *zoom: 1;
- }
- style>
- head>
- <body>
- <div class="container clearfix">
- <div class="box1">
- <div class="box2">
- <h3>不改变DOM位置的流体布局h3>
- <p>假如有一段文本和一幅图像,在DOM节点中,文本在前,图像在后,怎么能把图像定位到右边呢?p>
- <p>通常的做法是,调换DOM节点中图像与文本的位置,让图像在前,文本在后,然后将图像浮动到右边即可。p>
- <p>但这样改变DOM节点顺序始终不妥,还有什么更好的方法呢?p>
- <p>下面就介绍一种新的思路来完成布局。p>
- <ul>
- <li>将文本用div包起来,定义为box1;现在的结构是一个box1和一个img。li>
- <li>将box1宽度设为100%,左浮动;将img设置一个宽度,也左浮动,然后margin-left设为负的宽度值;此时图像就定位到文本的右边啦。li>
- <li>但是有一个问题,图像盖住了文本内容,这可怎么办?li>
- <li>重点来了,在box1中增加一个box2,box2把文本全部包起来,然后margin-right设为图像的宽度(+额外的间距),这样就解决问题啦!li>
- ul>
- div>
- div>
- <img src="http://imgsrc.baidu.com/forum/w%3D580/sign=0c101fe665380cd7e61ea2e59145ad14/f9a3492762d0f7032de1758a08fa513d2797c542.jpg" alt="a picture" style="width:200px;height:300px" />
- div>
- body>
- html>
二、margin的百分比数值
当margin属性的值为百分数时,其总是以父元素的width为基数进行计算。
请看下面这个demo,当初折磨了我N久的。。。只怪我知道得太晚了,说多了都是泪啊。。。
XML/HTML Code复制内容到剪贴板
- >
- <html>
- <head>
- <meta charset="utf-8">
- <title>margin的百分数值title>
- <style>
- .container {
- width: 500px;
- height: 300px;
- margin: 50px auto;
- background-color: orange;
- border: 1px solid black;
- }
- &
相关内容
- Web移动端布局那些事_CSS布局实例_CSS_网页制作_
- CSS特殊性、继承与层叠_CSS教程_CSS_网页制作_
- CSS布局基础BFC _CSS教程_CSS_网页制作_
- 单元格内文本显示超过单元格宽度的快速解决办法_CSS教程_CSS_网页制作_
- CSS3弹性伸缩布局之box布局_css3_CSS_网页制作_
- CSS中的指定值、初始值和计算值学习教程_CSS教程_CSS_网页制作_
- 利用CSS实现立方体360度旋转效果实例代码_CSS教程_CSS_网页制作_
- css让容器水平垂直居中的7种方式_CSS教程_CSS_网页制作_
- 关于清除浮动塌陷的几种方法总结_Div+CSS教程_CSS_网页制作_
- 纯CSS实现导航栏Tab切换效果_CSS教程_CSS_网页制作_
点击排行
本栏推荐
