当前位置:Gxlcms > css > 一个关于css中margin-right没有效果的问题

一个关于css中margin-right没有效果的问题

时间:2021-07-01 10:21:17 帮助过:72人阅读

margin-right其实有效果的,只是在默认即标准流的情况的下显示不出来效果。如果脱离标准流呢?想到这个,就立马在css文件中加了一个:float:right;然后在测试的时候就能看到margin-right的效果了 今天在群里面,有人抛出了一个关于css中margin-right没有效果的问题。CSS代码和HTML代码如下:

代码如下:

  1. .style1{
  2. width:400px;
  3. height:440px;
  4. background-color
  5. :red;
  6. border:5px solid silver;
  7. margin-top
  8. :20%;
  9. margin-right:30%;
  10. }

代码如下:

  1. <html>
  2. <head>
  3. <link rel="stylesheet" type="text/css" href="mystyle.css">
  4. </head>
  5. <body>
  6. <p class="style1"><img src="bei.jpg"></p>
  7. </body>
  8. </html>

把他的代码copy下来,换一张图片,我做了一个test,还真的不行。

难道是top会隐藏掉right的效果?或者跟顺序有关?后来证明这些都是错误的想法。结合w3school对margin-right和自己隐约的记忆:浏览器是默认左对齐的。灵感一来,margin-right其实有效果的,只是在默认即标准流的情况的下显示不出来效果。如果脱离标准流呢?想到这个,就立马在css文件中加了一个:float:right;然后在测试的时候就能看到margin-right的效果了。

用float:left也是不行的,这跟默认的情况是差不多的。
PS:关于right属性无效的原因:right属性只有在position是absolute的情况下才有效,而默认的position值是static,right属性是无效的。建议能不使用right就不要使用right属性。

以上就是一个关于css中margin-right没有效果的问题的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行