当前位置:首页 > 技术文章 > 正文内容

【CSS】图片实现上下居中、左右居中的另类实现方法

zonemu2个月前 (07-18)技术文章18

在制作网页的很多时候为了页面美观都需要图片能够做到上下居中、左右居中。网上现实的方式方法也有很多,这里分享我经常使用的一种方法。

实现方法

// HTML代码
<div class="row">
          <div class="col-xs-3">
                    <img src="/public/empty_200x100.png" class="imgbg" style="background-image:url('/uploads/demo.jpg');">
          </div>
</div>

// CSS 代码
<style type="text/css">
          .imgbg{
                    width:100%; 
                    background-color: #ebf2f9; 
                    background-position: center; 
                    background-size:contain; 
                    background-repeat: no-repeat;
          }
</style>

实现原理

1、先准备一张透明的png图片。

2、对这个图片定义一个 Css样式,添加这几个属性:

background-position: center;背景图片居中

background-size: contain;显示完整背景图片

background-repeat: no-repeat;背景图不重复

3、然后把要显示的图片作为背景图片。

这样图片就不会随着尺寸不同错位显示。展示的时候如果需要显示正方形图片,只需要制作一个1x1比例的png图片,另外可以根据自己的要求制作png图片。

升级处理

在展示图片的时候,可能有些小伙伴不喜欢把图片放到style样式里面,可能会感觉到看起来怪怪的。

style="background-image: url('/uploads/demo.jpg');

我们想要的可能是这样的展示方式

<img src="/public/empty_200x100.png" data-src="/uploads/demo.jpg" class="imgbg">

这样其实也简单,我们可以借助于 jquery 来实现这个功能。代码如下:

<script type="text/javascript">
$(document).ready(function() {
          $("[class='imgbg']").each(function(index, el) {
                    $(this).css('background-image', 'url(' + $(this).data('src') + ')');
          });
});
</script>

PHP 实现

PHP 实现生成图片也分为二种

1、图片上传的时候,按后台设置的尺寸生成。

2、图片预览的时候,按URL中设置的参数生成。

github地址

https://github.com/zjutsxj/autoCropImage

相关文章

使用GitLab实现CICD(gitlab配置cicd)

GitLab CI/CD 是一个内置在GitLab中的工具,用于通过持续方法进行软件开发:Continuous Integration (CI) 持续集成Continuous Delivery (C...

(在线编辑DWG)网页CAD二开实现焊接符号绘制

前言在工程制图和制造领域,焊接符号(Welding Symbols)是用于表示焊缝类型、尺寸、位置以及工艺要求的标准化图形语言。广泛应用于机械设计、钢结构、船舶制造、压力容器等行业中,帮助技术人员理解...

HTML5最新版本介绍(“html5”)

HTML5是HTML4.01和XHTML1.0之后超文本标记语言的最新版本,由一群自由思想者设计,最终实现了多媒体支持、交互性、更智能的表单和更好的语义标注。 HTML 5不只是 HTML规范的最新...

详解HTML5培训课程行业标准(html5课程总结)

需要HTML5培训必须先了解HTML5前景,没前景的职业,我们绝对不去入坑,这是正常人的思维。因此学习HTML5还的要多了解一些,目前HTML5技术已经日趋成熟,从国内热潮来看很多企业已开始使用,所以...

全屋定制板材怎么选不出错?6 种板材深度对比,3 套方案闭眼选

装修选板材头疼吧?刚装完的柜子变形发霉,说好的环保结果甲醛超标,这种翻车现场见太多了。厨房卫生间千万别用密度板,这玩意儿遇水就膨胀,半年准完蛋。颗粒板性价比确实高,但小厂出的真心不敢用。环保等级至少得...

Hutool JSONUtil巧妙过滤null值:JSON转Map数据清洗的终极方案

Hutool JSONUtil巧妙过滤null值:JSON转Map数据清洗的终极解决方案声明本文中的所有案例代码、配置仅供参考,如需使用请严格做好相关测试及评估,对于因参照本文内容进行操作而导致的任何...