实现响应式:flex布局+媒体查询@media

注意:

1. 这个案例,是我写vue项目修改的,所以思路同样适用于vue框架项目。
2. 建议先把代码直接复制过去,先看一下效果。

3. 涉及到知识点,flex布局的属性配合使用 , @media媒体查询的语法

4.  给ul设置 flex-wrap: wrap , 一定要允许li可以换行,我在这个坑里,躺了好几分钟。
5.  我写的时候,也花了不少时间,学的人应该更耐心些。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>实现响应式:flex布局 + 媒体查询</title>
    <style type="text/css">
        .site_introduce{
          width: 1200px;
          margin: 0 auto;
          margin-top: 70px;
          height: 250px;
          border: 1px solid #00ff00;
        }
        li{
          list-style: none;
        }
        .product_introduction{
          width: 1200px;
          margin: 0 auto;
        }
        .product_introduction ul{
          display: flex;
          flex-direction: row;
          justify-content:space-between;
          align-items: center;
           flex-wrap:wrap;
        }
        .product_introduction ul li{
          width: 272px;
          height: 250px;
          padding: 20px 0;
          border: 1px solid #00ff00;

          display: flex;
          align-items: center;
          justify-content: center;
        }
        .product_introduction ul li:hover{
          background-color: #F2F2F2;
        }
        .product_introduction ul li>div>p{
          text-align: center;
        }
        /* 设置图片样式 */
        .introduce_pic{
          width: 100px;
          height: 100px;
          margin: 0 auto;
          border-radius: 50%;
          background-color: #F1F3F4;
          text-align: center;
        }
        .introduce_pic img{
          width: 70px;
          padding-top: 18px;
          background-repeat: no-repeat;
        }
        @media screen and (max-width:1200px) {
          .product_introduction{
            width: 928px;
            margin: 100px auto;
          }
        }
        @media screen and (max-width:928px) {
          .product_introduction{
            width: 646px;
            margin: 100px auto;
          }
        }
        @media screen and (max-width:646px) {
          .product_introduction{
              width: 364px;
              margin: 100px auto;
          }
    </style>
</head>
<body>
     <div class="product_introduction">
      <ul>
        <li>
          <div>
            <div class="introduce_pic">
              <img  src="dog.jpg" alt="hero" />
            </div>
            <p>随便的文本1</p>
          </div>
        </li>
        <li>
          <div>
            <div class="introduce_pic">
              <img  src="dog.jpg" alt="hero" />
            </div>
            <p>随便的文本2</p>
          </div>
        </li>
        <li>
          <div>
            <div class="introduce_pic">
              <img  src="dog.jpg" alt="hero" />
            </div>
            <p>随便的文本3</p>
          </div>
        </li>
        <li>
          <div>
            <div class="introduce_pic">
              <img  src="dog.jpg" alt="hero" />
            </div>
            <p>随便的文本4</p>
          </div>
        </li>
      </ul>
    </div>
</body>
</html>

原文地址:https://www.cnblogs.com/tengyuxin/p/11118199.html

时间: 2024-07-28 20:58:20

实现响应式:flex布局+媒体查询@media的相关文章

(响应式PC端媒体查询)电脑屏幕分辨率尺寸大全

(响应式PC端媒体查询)电脑屏幕分辨率尺寸大全 时间:2015-08-17 16:50:40      阅读:3961      评论:0      收藏:0      [点我收藏+] PC端 按屏幕宽度大小排序(主流的用橙色标明) 分辨率   比例 | 设备尺寸 1024*500 (8.9寸) 1024*768 (比例4:3  | 10.4寸.12.1寸.14.1寸.15寸; ) 1280*800(16:10  |15.4寸) 1280*1024(比例:5:4  | 14.1寸.15.0寸)

响应式设计:媒体查询

媒体查询可以让我们根据设备显示的特性为其设定CSS样式.可以在不改变页面内容的情况下,为特定的一些输出设变指定显示效果. 一.媒体查询语法 1.<link>标签:通过link标签的media属性为样式表指定设备类型,例如: 以下代码表示媒体类型是显示屏,媒体特性为显示屏纵向放置,此时才引入cssy样式 <link rel="stylesheet" type="text/css" media="screen and (orientation

响应式网页之媒体查询

由于现在的网页要兼容各种pc尺寸及ipad甚至手机屏幕,所以响应式的网页变得尤为重要.手写响应式网页,具体技术点有: 1.声明viewport元标签(响应式网页必备) <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> width - viewport的宽度 height - viewport的高度 initial-scale - 初

pc端常用电脑屏幕 ((响应式PC端媒体查询)电脑屏幕分辨率尺寸大全)

PC端************ 按屏幕宽度大小排序(主流的用橙色标明) 分辨率   比例 | 设备尺寸 1024*500 (8.9寸) 1024*768 (比例4:3  | 10.4寸.12.1寸.14.1寸.15寸; ) 1280*800(16:10  |15.4寸) 1280*1024(比例:5:4  | 14.1寸.15.0寸) 1280*854(比例:15:10 | 15.2) 1366*768 (比例:16:9 | 不常见) 1440*900 (16:10  17寸 仅苹果用) 144

响应式表格布局

通过css媒体查询捕捉浏览器的大小,来改变css样式,本例是改变表格的样式 html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>响应式表格布局</title> <link rel="stylesheet" type="text/css" href=&qu

响应式图片布局

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>响应式图片布局</title> <link rel="stylesheet" type="text/css" href="begin.css" /> </head> <

响应式web设计之CSS3 Media Queries

开始研究响应式web设计,CSS3 Media Queries是入门. Media Queries,其作用就是允许添加表达式用以确定媒体的环境情况,以此来应用不同的样式表.换句话说,其允许我们在不改变内容的情况下,改变页面的布局以精确适应不同的设备. 那么,Media Queries是如何工作的? 两种方式,一种是直接在link中判断设备的尺寸,然后引用不同的css文件: <link rel="stylesheet" type="text/css" href=

[转]响应式web设计之CSS3 Media Queries

开始研究响应式web设计,CSS3 Media Queries是入门. Media Queries,其作用就是允许添加表达式用以确定媒体的环境情况,以此来应用不同的样式表.换句话说,其允许我们在不改变内容的情况下,改变页面的布局以精确适应不同的设备. 那么,Media Queries是如何工作的? 两种方式,一种是直接在link中判断设备的尺寸,然后引用不同的css文件: <link rel="stylesheet" type="text/css" href=

巧妙使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的好方法

有无数的理由要求我们在任何时候都应该知道用户是使用的什么设备浏览我们的网站——宽屏,普通屏,平板,手机?知道这些特征,我们web应用的CSS和JavaScript才能同步做相应的操作.在给Mozilla Developer Networks改版设计的过程中,我发现使用CSS媒体查询(media queries)虽然非常的有效,但有时,JavaScript却不能及时知道用户浏览设备的状态.浏览网站的用户使用的是桌面电脑,还是平板,还是手机?这对于CSS来说很容易,但CSS却无法将这些信息告诉Jav