javascript - 关于js控制图片显示的问题,急求,谢大神!!!
高洛峰
高洛峰 2017-04-11 09:44:15
0
4
482

页面上有一个栏目,该p层大小固定,比如400400,照片需要经常替换,照片的尺寸不固定,可能是横版也可能是竖版的。如何设置JS+CSS,使照片只显示400400像素(照片主体内容需显示完整),四周隐藏,而不致图片失真呢?
网上找的方法1:但是显示不完整

onload="this.style.marginTop=500-this.height;this.style.marginLeft=500-this.width;" />

方法2.onload="this.style.marginTop = (parseInt(this.parentNode.style.height) - this.height)/2 + 'px';this.style.marginLeft = (parseInt(this.parentNode.style.width) - this.width) /2 + 'px'"
和方法1基本没啥差别,图片显示不完全,比如1400*500的图片,只显示了右下角一点点,内容都不完整了
大神们求好的方法?????

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆 (4)
左手右手慢动作

多图的话, 可以js 每次切换缓存一个图片

var image = document.createElement( "img" ); image.src = "https://gss0.bdstatic.com/7051cy89QMgCncy6lo7D0j9wexYrbOWh7c50/liuwei/80x120.gif?t=1480320379589"

console.log:

image.height 120 image.width 80

然后再在你需要显示的p中通过backgroud指定图片的position来控制, 尺寸有了, 位置自己写一个算法即可

    PHPzhong

    直接把img 宽度设成100% 就可以了,撸主试试

      左手右手慢动作

      这样。。不知你对兼容性要求如何。

      p{ width:400px; height:400px; background-positon:center; bgckground-size:cover; }
        伊谢尔伦
        p { position: relative; } img { position: absolute; top: 50%; left: 50%; max-width: 400px; max-height: 400px; transform: translate(-50%, -50%); }

        不知道这样是不是你要的效果

          最新下載
          更多>
          網站特效
          網站源碼
          網站素材
          前端模板
          關於我們 免責聲明 Sitemap
          PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!