图片的居中定位和按钮定位

要求:

div 中一张图片,需要让这张图片的中心部分始置于这个div的中间。两边超出部分隐藏。

代码实现:

div{
    img {
        margin-left: 50%; /*相对父元素*/
        transform:translateX(-50%);/* 相对自身宽*/
    }
}

button 定位到一张图片上

当设计给的是一张大图,上面的按钮不能通过CSS实现,只能使用设计给的图时,这时需要在这张大图上进行链接button的定位。

方法:不要做背景,对图片进行切割,从按钮的上边部分进行切割,上面的部分成为一个 img 标签,下面的部分成为一个img,这样对 button 进行定位的时候始终设置 top 值为0。

单位的选择:使用百分比肯定是不行的,当页面变大或者变小的时候,或者是页面缩放的时候必然会出现定位不准的问题。

所以当 top 值设置为0后,只需要设置左右的距离就行。首先先将按钮居中,这很好实现。

如果有多个按钮,那么先将他们居中,再通过一个固定的 margin-left/right 值(前提:图片不会进行缩放,始终显示中间的部分。如果图片宽度会进行缩放,那么只能使用百分比定位)进行相对定位,这样在页面缩放或者变大变小的时候页面定位不会乱。

TODO:纯 CSS2 的方式实现图片的居中

https://aiezu.com/article/img_overflow_center_css_js.html

<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.demo-box { position:relative; width:200px;height:200px; overflow:hidden;}
.demo-box  p { position:absolute;top:50%;left:50%;margin:0;padding:0; }
.demo-box img { position:absolute;top:-50%;left:-50%;display:block; } // 相对父元素,但是父元素和自己宽高一致。这里其实相对于自己
.demo-box img.hide { visibility:hidden;position:static; } 
</style>
</head>

<body>
<div class="demo-box">
  <p>
     <img class="hide" src="images/400x200.jpg"/>// 撑开p标签,使得和图片具有相同宽高,但是不显示
     <img src="images/400x200.jpg"/> 
  </p>
</div>

</body>
</html>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值