css中margin-left与left的区别
2015-10-28 13:17
441 查看
研究下拉菜单和弹出菜单时比较所得:
1.直接在css中设置left生效的前提是必须设置父容器position:absolute或relative,如果不设置则会显示为最近一个定位的父对象左边相关的位置:
测试代码:
[html] view plaincopy
<div style="position:relative;top:100px;left:100px;border:1px solid blue;width:100px;height:100px;">
<div id="outer" style="position:relative;margin-top:25px;margin-left:25px;width:50px;height:50px;border:1px solid red;">
<div id="inner" style="position:absolute;left:15px;top:15px;width:25px;height:25px;border:1px solid green;"></div>
</div>
</div>
测试效果:
不设置红线框的position,设置蓝线框的position,绿线框的位置:
设置红线框的position,设置蓝线框的position,绿线框的位置:
2.设置margin-left则只会出现在父对象的左边的相对位置,不考虑是否设置了position。
测试代码:
[html] view plaincopy
<div style="position:relative;top:100px;left:100px;border:1px solid blue;width:100px;height:100px;">
<div id="outer" style="position:relative;margin-top:25px;margin-left:25px;width:50px;height:50px;border:1px solid red;">
<div id="inner" style="position:absolute;margin-left:15px;margin-top:15px;width:25px;height:25px;border:1px solid green;"></div>
</div>
</div>
不设置红线框的position,设置蓝线框的position,绿线框的位置:
设置红线框的position,设置蓝线框的position,绿线框的位置:
3.设置margin-right无法起到将element定位到右边相距XX位置,但设置right可以。
测试代码:
<div
style="position:relative;width:98px;height:63px;background-image:url('images/pic.png');margin-left:100px;margin-top:300px;">
<img
src="http://blog.163.com/fan_yishan/blog/images/delete.gif" style="position:absolute;top:-10px;right:-5px;"/>
</div>
测试效果:
设置margin-right
设置right
转自 http://blog.csdn.net/tomatozq/article/details/7178144
1.直接在css中设置left生效的前提是必须设置父容器position:absolute或relative,如果不设置则会显示为最近一个定位的父对象左边相关的位置:
测试代码:
[html] view plaincopy
<div style="position:relative;top:100px;left:100px;border:1px solid blue;width:100px;height:100px;">
<div id="outer" style="position:relative;margin-top:25px;margin-left:25px;width:50px;height:50px;border:1px solid red;">
<div id="inner" style="position:absolute;left:15px;top:15px;width:25px;height:25px;border:1px solid green;"></div>
</div>
</div>
测试效果:
不设置红线框的position,设置蓝线框的position,绿线框的位置:
设置红线框的position,设置蓝线框的position,绿线框的位置:
2.设置margin-left则只会出现在父对象的左边的相对位置,不考虑是否设置了position。
测试代码:
[html] view plaincopy
<div style="position:relative;top:100px;left:100px;border:1px solid blue;width:100px;height:100px;">
<div id="outer" style="position:relative;margin-top:25px;margin-left:25px;width:50px;height:50px;border:1px solid red;">
<div id="inner" style="position:absolute;margin-left:15px;margin-top:15px;width:25px;height:25px;border:1px solid green;"></div>
</div>
</div>
不设置红线框的position,设置蓝线框的position,绿线框的位置:
设置红线框的position,设置蓝线框的position,绿线框的位置:
3.设置margin-right无法起到将element定位到右边相距XX位置,但设置right可以。
测试代码:
<div
style="position:relative;width:98px;height:63px;background-image:url('images/pic.png');margin-left:100px;margin-top:300px;">
<img
src="http://blog.163.com/fan_yishan/blog/images/delete.gif" style="position:absolute;top:-10px;right:-5px;"/>
</div>
测试效果:
设置margin-right
设置right
转自 http://blog.csdn.net/tomatozq/article/details/7178144
相关文章推荐
- css3选择器
- CSS Animation triggers text rendering change in Safari
- ionic css布局介绍(一)
- css的继承层叠特殊性
- CSS 盒模式
- css中鼠标形状总结
- CSS
- html/css学习零星笔记(一)——如何使用样式
- CSS的学习
- CSS定位属性之间的相互作用
- css美化压缩工具
- 史上最全CSS Hack方式一览
- css3结构性伪类选择器
- css3属性选择器
- CSS3实现精美的纸张折角效果
- CSS3实现精美的纸张折角效果
- CSS3之文本阴影text-shadow
- css3 @font-face设置嵌入字体
- CSS3文本超出容器显示省略号之text-overflow属性
- CSS3线性渐变和径向渐变