一个简单的栅格实例之缩略图

一个小小的响应式页面设计

在这里插入图片描述
做四个类似于bootstrap官网上的这个缩略图,缩略图,咱这个地方的缩略图就是上面一个图片,下面有文字解释的东西,然后我们这里设计的这四个缩略图是要符合响应式页面的,就是可以跑在多个终端上面,这里的四个图会根据页面大小来进行换行

步骤:

先引入bootstrap的jquery文件
再引入bootstrap的bootstrap.js文件
写一个固定容器
去bootstrap官网粘贴缩略图的代码复制到固定容器里面
修改相关信息

在我们写很多样式的时候,我们都可以用这个步骤,最主要的是找对我们需要的样式在bootstrap官网里面对应的代码,然后我们就直接复制过来进行修改就行


引入文件

在这里插入图片描述
第一个文件引入的是jquery,我们要引入bootstrap中的样式需要先引入jquery,因为bootstrap是基于jquery写的,然后第二行引入bootstrap的js文件,这都是为后面引入的css文件作铺垫,然后后面引入css的文件,这里引入的是压缩过的css文件

当然我们也可以把引入jqjscss的代码写在最下面即:
在这里插入图片描述
这样可读性更强

这里,我们还需要引入一个文件,<meta name="viewport" content="width=device-width, initial-scale=1">,这个东西,这个最主要用于移动端的,如果不加这个,响应式页面有可能在移动端无法正常改变样式如下:
在这里插入图片描述
就会变成这个样子,下面多一个滚动条,而且原来应该一行一个的缩略图不会换行了

看看bootstrap官网上怎么说:
在这里插入图片描述
<meta http-equiv="X-UA-Compatible" content="IE=edge">,这句话其实是指定浏览器按某种方式渲染。这个不用写也行
<meta name="viewport" content="width=device-width, initial-scale=1">这个就是使移动端不会出问题的标签了
当然这两个标签都是要写在其他内容的前面的
这上面两个标签的相关讲解请看这个链接

组件的构建

在bootstrap官网里面有很多相关的组件
bootstrap官网:地址
在这里插入图片描述
这里面开发人员现成的代码,我们不需要手写,直接粘贴过来就行
在这里插入图片描述
这里,中间粘贴过来的就是缩略图的代码,外面的div是个固定容器,把缩略图放到里面,这里,右边因为咱们还没放图片所以没图片

由代码可以看出来,缩略图也是由栅格系统写成的,栅格系统的bootstrap里面的精华所在,比较重要


修改相关的信息

即我们把我们的代码进行修改,改成我们需要的样子

在这里插入图片描述
在这里插入图片描述
上面是我们展现出来的最终效果,同时可以随着页面大小变化而自己换行

下面是bootstrap官网缩略图组件的代码
在这里插入图片描述
这只是一个缩略图(即一列)的代码,我们需要四个,所以我们需要复制几份,这里面,我们不需要按钮我们可以去掉。这里的代码写的是是一个固定容器包裹着一个栅格,然后栅格里面只有一个列,我们需要四列,所以我们可以这样

如下图:
在这里插入图片描述
这里分为三个部分,最外面红色的是固定容器,然后蓝色的是定义一个栅格,然后里面棕色的部分是列部分,是四个列的代码,这里我们删除按钮的列然后插入自己的图片,然后改一下列的阈值部分即21,31,41,51那几行的代码就可以了修改这个的技巧在这:这个链接最下面的技巧

功能拓展

假如我们要页面缩小的时候,我们要第一个缩略图先换行,再第二个,再第三个,我们可以这样写
步骤:

改html结构
设置列排序来调整位置

1.改html结构

因为栅格是用浮动写的,所以我们要页面缩小的时候,我们第一个缩略图先换行,那我们就先需要把第一个缩略图的代码写在第四行,第二个写在第三行,第三个写在第二行,第四个写在第一行
在这里插入图片描述
差不多这个样子
效果如下:
在这里插入图片描述

2.设置列排序来调整位置

我们先设置在lg状态下各个缩略图的位置
在这里插入图片描述
我们设置每个缩略图对应的排序左右移动份数
lg情况下效果如下:
在这里插入图片描述
没有问题

然后在md和sm下是这样:
在这里插入图片描述
在这里插入图片描述
有问题

所以我们还需要设置这两种情况下的排序
在这里插入图片描述
这样就没有问题了,因为在sm状态下本来就是一个列独占一行,所以sm状态下不用设置排序

注意一个地方,我上图用蓝色笔标出的地方
这个是设置了md状态下他的排序移动份数是0,那么这个看起来好似是没什么用,因为md状态下,第三个logo确实不用移动,如下
在这里插入图片描述
第三个logo在中间,按理说确实不用移动

但是我们看如果不设置移动的话会怎么样:
在这里插入图片描述
他这第三个logo陷进去了,出现问题了
原因:
在这里插入图片描述
我们这里把md的移动注释掉了,导致第三个logo左右即为lg和为sm状态下有移动但是把本该在中间过渡段的md移动的省略了,这样就会导致移动出问题,在md状态下会自己使用sm状态下的移动,就会出现上面的情况

注意:
在我们设置栅格排序和偏移的时候,绝对不能跳着设置,即比如设置完lg的排序,不管md的排序直接设置sm的排序,不能这样,这样会出问题,如果我们不想让隔开的那个状态移动,我们可以设置他的移动份数为0,但是不能不设置


知识点小补充之压缩文件和未压缩文件的区别

压缩文件:
此处的压缩文件就比如下面
在这里插入图片描述
所有的代码全挤在几行中,导致下面的滚动条很长很长,然后,这样的代码可读性很低,但是人家运行速度快

未压缩文件:
在这里插入图片描述
就这种正常写的代码,有注释对应的格式都有,可读性较好,易于debug和更改,但是体积较大,传输时间长

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在 Nuxt 项目中使用 Swiper 缩略图控制可以通过以下步骤实现: 1. 安装 Swiper 和 Swiper Vue 模块: ```bash npm install swiper swiper/vue ``` 2. 在 `nuxt.config.js` 中引入 Swiper 样式: ```js css: [ 'swiper/css/swiper.css' ], ``` 3. 在需要使用 Swiper 的页面中引入 Swiper 和 Swiper Vue 组件: ```vue <template> <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide" v-for="(item, index) in list" :key="index"> <img :src="item.image" /> </div> </div> <div class="swiper-pagination"></div> </div> <div class="swiper-container-thumbnails"> <div class="swiper-wrapper"> <div class="swiper-slide" v-for="(item, index) in list" :key="index"> <img :src="item.image" /> </div> </div> </div> </template> <script> import { Swiper, SwiperSlide } from 'swiper/vue'; import SwiperCore, { Pagination, Thumbs } from 'swiper/core'; SwiperCore.use([Pagination, Thumbs]); export default { components: { Swiper, SwiperSlide, }, data() { return { list: [ { image: 'https://dummyimage.com/600x400/000/fff', }, { image: 'https://dummyimage.com/600x400/000/fff', }, { image: 'https://dummyimage.com/600x400/000/fff', }, ], }; }, mounted() { const swiper = new Swiper('.swiper-container', { loop: true, pagination: { el: '.swiper-pagination', clickable: true, }, thumbs: { swiper: { el: '.swiper-container-thumbnails', slidesPerView: 3, spaceBetween: 10, }, }, }); }, }; </script> ``` 4. 根据需求自定义样式。 上述代码中,我们使用了 `Swiper`、`SwiperSlide`、`Pagination` 和 `Thumbs` 组件,其中 `Swiper` 和 `SwiperSlide` 是 Swiper Vue 官方提供的组件,`Pagination` 和 `Thumbs` 是 Swiper 的核心模块。在 `mounted` 钩子函数中,我们初始化了一个 Swiper 实例,并配置了循环播放、分页器以及缩略图。其中缩略图的配置项 `swiper` 对应的是缩略图 Swiper 实例的配置项,我们可以根据需求自行设置。在 HTML 中,我们分别定义了一个 Swiper 容器和一个缩略图容器,并通过 `v-for` 循环渲染图片。需要注意的是,两个容器的类名不能重复,并且需要在 Swiper 实例的配置项中正确引用。 最后,我们可以根据需求自定义 Swiper 和缩略图容器的样式,例如修改容器宽度、高度、背景色等。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值