今天学习了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. (转)关于Oracle AUTONOMOUS TRANSACTION(自治事务)的介绍

    AUTONOMOUS TRANSACTION(自治事务)的介绍 在基于低版本的ORACLE做一些项目的过程中,有时会遇到一些头疼的问题,比如想在执行当前一个由多个DML组成的transaction(事 ...

  2. Android Volley完全解析(一),初识Volley的基本用法

    1. Volley简介 我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据.Android 系统中主要提供了两种方式来进行 ...

  3. CALayer

    刚刚无聊,画了一个月亮. - (void)viewDidLoad { [super viewDidLoad]; self.view.layer.backgroundColor = [UIColor b ...

  4. c#利用反射获取对象属性值

    public static string GetObjectPropertyValue<T>(T t, string propertyname){     Type type = type ...

  5. 一个页面中显示多个button时总行数计算公式。

    总行数 = (按钮总数 + 每一行按钮数 - 1) / 每一行按钮数. 同理.假设我们要显示一定总数的item.每页固定数量,则总页数为. 总页数 = (总显示数量 + 每页显示的数量 - 1) / ...

  6. 【POJ2482】Stars in Your Window(线段树,扫描线)

    题意:在二维坐标系中有一些带权值的点,要求用一个长宽指定不能互换的框套住其中的一些,使得它们的权值和最大. n<=10000 x,y<=2^31 思路:首先按X排序,将Y坐标离散化,X坐标 ...

  7. 检测是否IE浏览器

    function browserIsIE(){ if (window.ActiveXObject) return true; else{ var u_agent = navigator.userAge ...

  8. 在easyui中如何修改combobox的下拉框的高度为自适应高度

    在easyui中,有时候easyui下拉框的高度比较高,如果我们的值比较少,而下拉框的高度很高的话看起来不好看,修改前效果如下所示: 要修改下拉框的高度和我们的值自适应的 话,只要添加一个panelH ...

  9. PL/SQL远程连接Oracle的方式,无需安装客户端

    第一次用PL/SQL Developer这个非官方的软件,遇到了种种困难,幸好通过万能的Google已经全部解决,记录下来备察. 前提是保证你的远程oracle服务器一切正常.   微软客户端设置 使 ...

  10. setNeedsDisplay和setNeedsLayout

    1,UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到  UI ...