今天学习了pure.css可定制的网格系统,pure默认的网格系统是移动先行,如果我们想在小屏幕上有网格只要用pure-u-*就可以了,下面来说一下它的主要用法!

<div class="pure-g">
<div class="pure-u-2-5">五分之二</div>
<div class="pure-u-1-5">五分之一</div>
<div class="pure-u-1-5">五分之一</div>
<div class="pure-u-1-5">五分之一</div>
</div>

效果:

那么图片如何随着设备的缩小与放大,宽高保持正确的比例呢?

<div class="pure-g pics">
<div class="pure-u-1-3">
<img src="imgs/testImg01.jpg" alt="" class="pure-img">
</div>
</div>
<div class="pure-u-1-3">
<img src="imgs/testImg02.jpg" alt="" class="pure-img">
</div>
</div>
<div class="pure-u-1-3">
<img src="imgs/testImg03.jpg" alt="" class="pure-img">
</div>
</div>
</div>

这样就可以让这三张图片在一行显示,并且可以随着设备的大小而保持宽高等比例了!

效果如下图所示:

而在实际过程当中我们不可能让这些图片一个挨一个的排列,得让他们之间有一定的距离,而且一般在实际的移动页面之中他们的下方还有一定的说明文字。因此我们这边就可以使用l-box (即应用填充和边框网格)

方案一:(推荐)

style中的代码:

 <style>
/*图片*/
.pics{
text-align: center;
}
.wenzi{
display: inline-block; /* span是行内元素*/
margin-top: 2px;
}
/*应用填充边框网格单位*/
.l-box{
padding: 1em;
}
</style>

body中HTML代码:

<div class="pure-g pics">
<div class="pure-u-1-3">
<div class="l-box">
<img src="imgs/testImg01.jpg" alt="" class="pure-img">
<span class="wenzi">森林深处</span>
</div>
</div>
<div class="pure-u-1-3">
<div class="l-box">
<img src="imgs/testImg02.jpg" alt="" class="pure-img">
<span class="wenzi">冰天雪地</span>
</div>
</div>
<div class="pure-u-1-3">
<div class="l-box">
<img src="imgs/testImg03.jpg" alt="" class="pure-img">
<span class="wenzi">夕阳西下</span>
</div>
</div>
</div>

方案二:(缺点:传统的浏览器如IE 7及以下缺乏支持box-sizing

style样式:

  <style>
html{
font-size: 60%;
}
/*核心样式*/
.pure-g > div {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.l-box {
padding: 1em;
}
/*其它样式*/
.pics{
text-align: center;
font-size: 1rem;
}
.wenzi{
display: inline-block;
margin-top: 5px;
}
</style>

body中的html:

<!--方式二:-->
<div class="pure-g pics">
<div class="pure-u-1-3 l-box">
<img src="imgs/testImg01.jpg" alt="" class="pure-img">
<span class="wenzi">森林深处</span>
</div>
<div class="pure-u-1-3 l-box">
<img src="imgs/testImg02.jpg" alt="" class="pure-img">
<span class="wenzi">冰天雪地</span>
</div>
<div class="pure-u-1-3 l-box">
<img src="imgs/testImg03.jpg" alt="" class="pure-img">
<span class="wenzi">夕阳西下</span>
</div>
</div>

效果是一样的:

这就是pure.css的图片响应式的写法了!

Pure.css网格系统学习心得——图片的响应式以及应用填充和边框网格单位的学习的更多相关文章

  1. Pure – 赞!轻量的、响应式的 CSS 模块集

    Pure 是一组轻量的,响应式的 CSS 模块,您可以使用在任何的 Web 项目中.充分考虑了移动设备中的使用,保持文件体积尽量小,每行 CSS 都进行了仔细的考虑. Pure 基于 Normaliz ...

  2. bootstrap 学习笔记(5)---- 图片和响应式工具

    (一)响应式图片: 在 Bootstrap 版本 3 中,通过为图片添加 .img-responsive 类可以让图片支持响应式布局.其实质是为图片设置了 max-width: 100%;. heig ...

  3. Bootstrap图片支持响应式

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  4. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 图片:响应式图片

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. BootStrap学习之先导篇——响应式网页

    Bootstrap学习之前,要知道响应式网页的原理. 1.什么是响应式网页? 一个页面,可以根据浏览设备的不同,以及特性的不同,而自动改变布局.大小等.使得在不同的设备上上都可以呈现优秀的界面. 优点 ...

  6. 使用 FocusPoint.js 实现图片的响应式裁剪

    通常网站的布局都不是单一的.例如图像在电脑.平板和智能手机上可能显示的形状是不同的.特别是如果你使用的是全屏图像,在你必须使用相同的图像文件的情况下,你的主题可能会被截断或完全缺失,或者看起来很尴尬. ...

  7. 【唯星宠物】——CSS/BootStrap/Jquery爬坑之响应式首页

    前言:唯星宠物产品官网,分为首页.子页和登录注册页三个页面,除网页内容设计与图片素材的部分使用网上的材料之外,其余内容呈现以及功能模块全部为自己重构. 一.响应式轮播banner 思路:使用BootS ...

  8. 【技术分享会】 @第三期 CSS框架 PRUE 实现自适应和响应式

    Pure网址:https://purecss.cn/ 什么是响应式和自适应? .响应式:样式会随着屏幕大小改变,同一页面设备不同样式不同 .自适应:不管屏幕大小,页面的样式比例不变 响应式和自适应怎么 ...

  9. Bootstrap 学习笔记 项目实战 响应式轮播图

    左右两个箭头可以随浏览器缩放进行移动 保持在图片中间 Html代码: <!DOCTYPE html> <html lang="zh-cn"> <hea ...

随机推荐

  1. Angular JS中双击事件ng-dblclick避免同时触发两次单击事件ng-click的解决方案

    有些需求中,需要一个元素上既有双击事件,也有单击事件,而两者实现的效果不一样. 这时可以使用ng-dblclick与ng-click来实现需求,但是要避免浏览器将双击事件误认为是两次单击事件,从而出现 ...

  2. 提高你css技能的css开发技巧(转载)

    一.resize实现图片对比 resize的语法如下: resize:none | both | horizontal | vertical 案例效果如下图 (鼠标移到左下角白色区域,往右侧拖动,实现 ...

  3. 今天研究一下SVN的分支和合并

    关键字: trunk, branch, tag, merge 以前一直以为很难,没敢接触.今天晚上看了一下,也不过如此 用起来还是很简单的

  4. jquery获取所选元素的outerHTML

    大家都知道原生js可以获取匹配元素的内部html和外部html,内部是innerHTML,外部是outerHTML,原生js的dom对象是存在这两个属性的. 如果用jQuery如何获取匹配元素(包括自 ...

  5. [题解]poj 1274 The Perfect Stall(网络流)

    二分匹配传送门[here] 原题传送门[here] 题意大概说一下,就是有N头牛和M个牛棚,每头牛愿意住在一些牛棚,求最大能够满足多少头牛的要求. 很明显就是一道裸裸的二分图最大匹配,但是为了练练网络 ...

  6. JDBC 工具类

    在Java编程过程中 我们需要连接数据库 所以数据库的连接和增删改查操作是非常基本的操作同时又非常的重要.同时在JDBC编程中 ,有很多的方法如更新个查找操作,我们可以对其进行封装,提高我们编码的效率 ...

  7. JavaWeb 学习006-4个页面,5条sql语句(添加、查看、修改、删除)

    今天遇到的问题: 1. 在list页面上添加信息时候,跳转到doAdd页面后,点击保存按钮,能够跳转回list页面,但是新增的信息不能显示出来,就像是没有执行添加操作一样. 这是什么问题? ①是不是到 ...

  8. JavaWeb 学习005-4个页面,5条sql语句(添加、查看、修改、删除)

    今天完成了的事: = 1.班级模块,list页面的添加班级信息操作,中文乱码问题 尚待解决 这俩天做得工作是: 首先搭建好main页面:是由top.left.right三个部分构成的,拼接到一起. 流 ...

  9. Android学习---ListView和Inflater的使用,将一个布局文件转化为一个对象

    本文将介绍ListView和Inflater的使用,将接上一篇文章内容. 一.什么是ListView? 在android开发中ListView是比较常用的控件,ListView 控件可使用四种不同视图 ...

  10. [刘阳Java]_MyBatis_映射文件的select标签入门_第3讲

    1.Mybatis映射文件的<select>标签主要帮助我们完成SQL语句查询功能,<select>标签它包含了很多属性,下面简单对<select>标签的属性做一个 ...