html5的响应式布局的方法示例详解

2025-04-22 05:50

本文主要是介绍html5的响应式布局的方法示例详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助...

一 使用媒体查询响应式布局

        使用的参数@media这是常用的参数
                    width,height代表的是浏览器可视宽度,高度

                         device-width:设备屏幕的宽度

                         device-height:设备屏幕的高度

 使用的是内部样式表

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>媒体查询</title>
    <style>
        .div{
            /* width:1200px; */
            width:100%;
            /* height:600px; */
        }
        .div div{
            float: left;
            height:100px;
        }
    </style>
    <style media="(min-width:330px) and (max-width:430px)">
            .div div{
                width:33.3%
            }
            .div div:nth-child(1){
            background-color: aqua;
            }
            .div div:nth-child(2){
                jsbackground-color: yellow;
            }
            .div div:nth-child(3){
                background-color: green;
            }
    </style>
    <style media="(min-width:100px) and (max-width:329px)">
        .div div{
                width:50%
            }
            .div div:nth-child(1){
            background-color: aqua;
            }
            .div div:nth-child(2){
                background-color: yellow;
            }
            .div div:nth-child(3){
                background-color: green;
            }
    </style>
    <style media="(max-width:99px)">
       .div div{
                width:100%
            }
           .div div:nth-child(1){
            background-color: aqua;
            }
           .div div:nth-child(2){
                background-color: yellow;
            }
           .div div:nth-child(3){
                background-color: green;
            }
    </style>
</head>
<body>
    <div class="div">
        <div></div>
        <div></div>
        <div></div>
    </div>
</body>
</html>

外部样式

        进行创建三个的css的样式

               第一个

                      css-1.css

.div{
    /* width:1200px; */
    width:100%;
    /* height:600px; */
}
.div div{
    float: left;
    height:100px;
}
.div div:nth-child(1){
    background-color: aqua;
    }
    .div div:nth-child(2){
        background-color: yellow;
    }
    .div div:nth-child(3){
        background-color: green;
    }

        第二个

                css-2.css

.div div{
    width:33.3%
}

        第三个

                css-3.css

.div div{
    width:50%
}

        将这三个分别引入到MediaQuery.html中

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>媒体查询</title>
    <link rel="stylesheet" href="./css-1.css">
    <link rel="stylesheet" href="./css-2.css" media="(min-width:330px) and (max-width:430px)">
    <link rel="stylesheet" href="./css-3.css" media="(min-width:javascript100px) and (max-width:329px)"> 
</head>
<body>
    <div class="div">
        <div></div>
        <div></div>
        <div></div>
    </div>
</body>
</html>

        这就是我们媒体查询的响应式自适应

二 使用Flex进行响应式布局

        我们为什么使用flex

                用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为Flex布局更加符合响应        式设计的特点

        flex-direction

       作用:子元素在父元素盒子中的排列方式
        row:默认值,按从左到右的顺序显示

        row-reverse:与row相同,但是以相反的顺序

        column:灵活的项目将垂直显示,按从上到下的顺序

        column-reverse:与column相同,但是以相反的顺序

        flex-wrap

                作用:子元素在父元素盒子中的是否换行(列)

                nowrap:默认值。不换行或不换列。

                wrap:换行或换列。

                wrap-reverse:换行或换列,但以相反的顺序。

        justify-content

                作用:用来在存在剩余空间时,设置为间距的方式

                flex-start:默认值。从左到右,挨着行的开头。
          &nb编程sp;     flex-end:从右到左,挨着行的结尾。
                center:居中显示。
    android            space-between:平均分布在该行上,两边不留间隔空间。
                space-around:平均分布在该行上,两边留有一半的间隔空间。

        align-items

                作用:设置每个flex元素在交叉轴上的默认对齐方式

     &pythonnbsp;          flex-start:位于容器的开头。
                flex-end:位于容器的结尾
                center:居中显示。

        align-content

                作用:设置每个flex元素在交叉轴上的默认对齐方式

                flex-start:位于容器的开头。
                flex-end:位于容器的结尾。
                center:位于容器的中心。
                space-between:之间留有空白。
                space-around:两端都留有空白。

        其他属性

                flex-basis:设置弹性盒伸缩基准值。
                flex-grow:设置弹性盒子的扩展比率。
                flex-shrink:设置弹性盒子的缩小比率。
                flex:flex-grow、flex-shrink、flex-basis的缩写

三 CSS Grid        

基础布局:网格容器与项目

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3列 */
  grid-template-rows: repeat(3, 1fr);     /* 3行 */
  gap: 20px;                             /* 网格间距 */
  padding: 20px;
  background: #eee;
}
.grid-item {
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>
</div>
</body>
</html>

响应式网格:自动换行

<!DOCTYPE html>
<html>
<head>
<style>
.container {
  max-width: 1200px;
  margin: 0 auto;
}
.items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* 自动填充列 */
  gap: 15px;
}
.item {
  background: #f0f0f0;
  padding: 20px;
  border-radius: 6px;
}
</style>
</head>
<body>
<div class="container">
  <div class="items">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
    <div class="item">Item 4</div>
    <div class="item">Item 5</div>
    <div class="item">Item 6</div>
  </div>
</div>
</body>
</html>

到此这篇关于html5的响应式布局的方法的文章就介绍到这了,更多相关html5响应式布局内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章,希望大家以后多多支持编程China编程(www.chinasem.cn)!

这篇关于html5的响应式布局的方法示例详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1154316

相关文章

全面解析HTML5中Checkbox标签

《全面解析HTML5中Checkbox标签》Checkbox是HTML5中非常重要的表单元素之一,通过合理使用其属性和样式自定义方法,可以为用户提供丰富多样的交互体验,这篇文章给大家介绍HTML5中C... 在html5中,Checkbox(复选框)是一种常用的表单元素,允许用户在一组选项中选择多个项目。本

HTML5 搜索框Search Box详解

《HTML5搜索框SearchBox详解》HTML5的搜索框是一个强大的工具,能够有效提升用户体验,通过结合自动补全功能和适当的样式,可以创建出既美观又实用的搜索界面,这篇文章给大家介绍HTML5... html5 搜索框(Search Box)详解搜索框是一个用于输入查询内容的控件,通常用于网站或应用程

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

LiteFlow轻量级工作流引擎使用示例详解

《LiteFlow轻量级工作流引擎使用示例详解》:本文主要介绍LiteFlow是一个灵活、简洁且轻量的工作流引擎,适合用于中小型项目和微服务架构中的流程编排,本文给大家介绍LiteFlow轻量级工... 目录1. LiteFlow 主要特点2. 工作流定义方式3. LiteFlow 流程示例4. LiteF

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现