首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

33.33%宽度的3个Div在移动端变为100%宽度

基础概念

在CSS中,百分比宽度是相对于其父元素的宽度来计算的。当你设置一个元素的宽度为33.33%,它将占据其父元素宽度的三分之一。然而,在移动端设备上,由于视口(viewport)的变化,可能会出现一些布局问题。

问题原因

在移动端设备上,视口宽度通常较小,浏览器可能会对页面进行缩放以适应屏幕。这可能导致百分比宽度的计算基于一个缩放后的视口宽度,而不是设计时的预期宽度。此外,移动端浏览器对CSS的支持和渲染方式也可能与桌面端有所不同,这可能导致布局问题。

解决方法

  1. 使用媒体查询(Media Queries): 媒体查询允许你根据设备的特性(如视口宽度)应用不同的CSS样式。你可以为移动端设备设置特定的样式。
  2. 使用媒体查询(Media Queries): 媒体查询允许你根据设备的特性(如视口宽度)应用不同的CSS样式。你可以为移动端设备设置特定的样式。
  3. 使用Flexbox布局: Flexbox是一种强大的布局工具,可以轻松实现响应式设计。通过设置父元素为flex容器,并使用flex-basis属性来控制子元素的宽度。
  4. 使用Flexbox布局: Flexbox是一种强大的布局工具,可以轻松实现响应式设计。通过设置父元素为flex容器,并使用flex-basis属性来控制子元素的宽度。
  5. 使用CSS Grid布局: CSS Grid布局也是一种强大的布局工具,可以实现复杂的二维布局。
  6. 使用CSS Grid布局: CSS Grid布局也是一种强大的布局工具,可以实现复杂的二维布局。

应用场景

这些方法适用于需要在不同屏幕尺寸下调整布局的响应式设计。例如,一个网站需要在桌面端显示三列布局,而在移动端显示单列布局。

示例代码

以下是一个完整的示例,展示了如何使用媒体查询和Flexbox来实现响应式布局:

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Responsive Layout</title>
    <style>
        .parent-div {
            display: flex;
            flex-wrap: wrap;
        }

        .your-div-class {
            flex: 1 1 33.33%;
            background-color: lightblue;
            margin: 10px;
            padding: 20px;
            text-align: center;
        }

        @media (max-width: 600px) {
            .your-div-class {
                flex: 1 1 100%;
            }
        }
    </style>
</head>
<body>
    <div class="parent-div">
        <div class="your-div-class">Div 1</div>
        <div class="your-div-class">Div 2</div>
        <div class="your-div-class">Div 3</div>
    </div>
</body>
</html>

参考链接

通过以上方法,你可以确保在不同设备上都能实现预期的布局效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

关于Div的宽度与高度的100%设定

正像你所知道的那样,设置DIV大小的有两个属性width和height,以前在学习DIV每次给DIV设置100%宽度或高度时都很迷惑,不明确这个100%的宽度(高度)到底有多宽有多高?...其实,要弄懂div宽度|width100%、div高度|height100%到底是怎么实现的,只需弄懂一个简单的问题就可以了,即100%的基数是谁,就是这个100%是相对于谁的width、height来说是...div的100%是从其上一级div的宽高继承来的,有一点很关键,就是要设置div100%显示,必须设置其上一级div的宽度或高度,否则无效。...举例说明:父div(deman)宽300高200,子div(cc)如果在这个条件下设置divcc的宽高都为100%的话,那cc的确切大小就是父div的大小(宽300高200),在尝试中你会发现,div显示会受自身和其上一级...同时,让人高兴的是,这样设置的css样式不存在浏览器兼容问题,在IE5.5、IE6、IE7、IE8还有火狐均可正常显示。

3.9K20

关于移动端百分比宽度的几种实现

本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 由于移动端的设备宽度各不相同,而且因为竖屏宽度都比较小,所以一般都采用满屏的方式布局,而不像PC端的使用固定宽度居中的技术布局...full-list .item:nth-child(2n){ background: #ccc; } .full-list .item:hover{ background: #f00; } demo效果见: 移动端百分比宽度的几种实现...从这新单位的出现,也知道为了移动端的百分比我们的W3C组织也是操碎了心。 为了上面所说的四等分,那每个的宽度应该为25vw,而我们ul的list--xxx就是list--vw。...代码为: .parent{ display: table; table-layout: fixed; width: 100%; } .parent > .child{ display...而其余的flex,%或是table都不是最简单省事的,在单纯的宽度处理方面还能胜任,但如果涉及到高度随宽度同时变化,即宽高遵守某个比例(如图片或视频的变化),就需要借用padding技术撑开了。

88610
  • 关于移动端百分比宽度的几种实现

    由于移动端的设备宽度各不相同,而且因为竖屏宽度都比较小,所以一般都采用满屏的方式布局,而不像PC端的使用固定宽度居中的技术布局。...full-list .item:nth-child(2n){ background: #ccc; } .full-list .item:hover{ background: #f00; } demo效果见: 移动端百分比宽度的几种实现...从这新单位的出现,也知道为了移动端的百分比我们的W3C组织也是操碎了心。 为了上面所说的四等分,那每个的宽度应该为25vw,而我们ul的list--xxx就是list--vw。...代码为: .parent{ display: table; table-layout: fixed; width: 100%; } .parent > .child{ display...而其余的flex,%或是table都不是最简单省事的,在单纯的宽度处理方面还能胜任,但如果涉及到高度随宽度同时变化,即宽高遵守某个比例(如图片或视频的变化),就需要借用padding技术撑开了。

    94490

    纯CSS实现移动端常见布局——高度和宽度挂钩的秘密

    纯CSS实现移动端常见布局——高度和宽度挂钩的秘密 不踩坑不回头.之前我在一个项目中大量使用css3的calc计算属性.写代码的时候真心不要太爽啊…但是在项目上线之后,才让我崩溃了,原因很简单,在低于安卓...需要的效果,如下图: 需求分析 看图,其实很简单.如果宽度是固定的,那么这个布局就不要太简单了. 问题是,设备的宽度是不固定的哦,那么问题就是,在不知道具体宽度的时候,如何来设定它对应的高度呢?...也就是说,如何在CSS中,找到一个高度和宽度挂钩的属性.只要存在这个参数,那么,问题就能解决. 那么有没有这个参数呢?...class="box1">div> div class="box2">div> div class="box3">div> CSS代码...在我们遇到一些问题的时候,尤其是布局这种问题,我们要考虑的是,能不能用CSS解决,而不时一位的去考虑JS.毕竟,JS是用来交互的,而CSS是用来布局的.

    1.3K10

    【移动端网页布局】流式布局案例 ⑤ ( 连续排列的链接图片 | 设置盒子圆角 | 超出部分隐藏 | 设置浮动布局 | 精确计算浮动元素宽度避免换行 | 设置图片宽度自适应 )

    , 放置在 单独的 div> 标签中 , 每个 div> 标签中放置一个 链接标签 , 在 链接标签中包裹一个 图片 ; 宽度超过 当前宽度 , 会自动换行 , 因此这里为每个子元素设置一个 1/3 宽度 , 即 33.33% ; 子元素 div> 设置浮动和宽度的样式如下 : .brand div...个 为其设置 1/3 的宽度即可 */ width: 33.33%; } 5、设置图片宽度自适应 上述布局中 , 图片自动充满父容器 , 为 标签设置 100% 宽度 , 设置图片后..., 会按照宽高比等比例缩放 ; 设置样式为 : .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } 二、完整代码实例...1/3 的宽度即可 */ width: 33.33%; } .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%

    3.6K20

    栅格化系统的原理以及实现

    页面上将会展示一个带有灰色边框的,宽度 100% 的矩形。如果手动控制浏览器放大缩小,此 DIV 也会相应的放大缩小,但宽度始终是 100%。...页面上将会有两个宽度各占 50% 的 DIV,如果页面放大或缩小,这两个 DIV 都会始终保持着页面 50% 的宽度。...实现 让我们来亲自实现一个栅格化系统,假设我们要将一行划分为 12 等分,那 1 等分就占有 100% / 12 = 8.33% 的宽度。...其实,它们都是栅格化系统的 CSS 类名,只是针对了不同的屏幕宽度。 假如我们有这样的一个需求: 在 PC 上,因为屏幕比较大,我们要求一行显示 4 列的内容。...但是在手机上,因为屏幕比较小,要求一行显示 3 列的内容。 即一个网站同时适配 PC 和手机端,根据不同的端自动调整页面。

    1.6K40

    浅谈-web屏幕适配的解决方案

    特点 移动端下的屏幕存在以下特点: 屏幕相比较于PC端要小 浏览器不PC端,随时各种调整大小 原因 移动端由于屏幕整体比PC端小,而且也不能出现拖动浏览器来调整大小的情况,所以在移动端上的布局是流式布局最多.../ 64 ); } 将设计稿的宽度也抽象出去 div{ width:calc( 100rem / 十分之一的设计稿宽度 ); font-size:calc( 100rem / 十分之一的设计稿宽度...单位 名称 vw 100vw 等于 视口的宽度 vh 100vh 等于 视口的高度 vMax vw 和 vh 中的较大的那个 vMin vw 和 vh 中的较小的那个 以上单位 在移动端中,或者在小程序中都支持...后台服务器根据前端浏览器的User-Agent来判断来源请求是PC端还是移动端,然后服务器动态返回PC端页面或者移动端页面。...前端写好一套代码 html + css + javascript ,就可以冬天的根据屏幕的宽度来改变页面的样式 这种做法体验不是最好,但是却是最小的代码实现了 兼容pc端和移动端。

    8110

    写一个自适应九宫格图片栏

    小刘同学负责企微内嵌 H5 开发,按照这个项目一贯的做法 UI 只出了移动端设计稿。今天的页面有个附件展示组件,不点击的时候大概就像微博图片那样直接九宫格展示。...(点击再依据不同附件类型走各自的逻辑暂且不表)简单,对吧?小刘吭哧吭哧搞得差不多了,然后叫产品去开发环境瞅一眼。只见产品在 PC 企微客户端打开页面,横着一拉,小刘的组件就横向散开来了。...一问小刘,原来长宽都是写的固定多少 rem。项目本身之前一直丢在企微移动端里展示,也就一直没考虑sizechange的情况。。。小刘改了好一会还没改好。 于是写个demo给他。...: wrap; margin: 0 auto; } .img-item-wrap { box-sizing: border-box; width: 33.33%..." alt="" /> div> div> div> 复制代码 涉及到两个知识点: padding 百分比是相对于容器内容区域的宽度

    57920

    万字总结 CSS 布局

    下面我们列举一下它们各自的特点: 「块级元素:」 霸占一行,不能与其他任何元素并列 能接受宽、高 如果不设置宽度,那么宽度将默认变为父亲的100%,即和父亲一样宽 「行内元素:」 与其他元素并排 不能设置宽...默认的宽度就是文字的宽度 在HTML中,标签分为:「文本级」和「容器级」。...与div无异;此时的span能够设置高度和宽度;并且霸占一行,别人不能与之并排;如果不设置宽度,那么将撑满父亲。...在块级维度上元素会一个接一个排列下去,当你滚动页面时元素也会随着滚动。 当你改变元素的position属性时,通常情况下你也会设置一些偏移量来使元素相对于参照点进行一定的移动。...grid-template-columns: 100px auto 100px; 上面代码中,第二列的宽度,基本上等于该列单元格的最大宽度,除非单元格内容设置了min-width,且这个值大于最大宽度

    5.7K20

    第二章:基础概念精讲 - 第一节 - Tailwind CSS 响应式设计系统

    移动优先原则Tailwind CSS 采用移动优先(Mobile First)的设计理念:默认样式针对移动设备使用断点前缀定义更大屏幕的样式逐步增强的响应式设计响应式工具类使用1. 基础语法在移动设备:宽度100% 在中等屏幕:宽度50% 在大屏幕:宽度33.33% -->div>2. 常用响应式场景布局调整 div>div>2. 性能优化合理使用断点前缀避免过度嵌套优化移动端资源加载3. 可维护性建议保持类名顺序一致提取常用组合使用组件化思维常见响应式模式1....-- 侧边栏 --> div class="w-full md:w-64 bg-gray-100"> 的可维护性提供更好的用户体验适应各种设备需求在实际开发中,应该根据项目需求合理使用这些功能,并始终遵循移动优先的原则。

    8910

    移动web开发之流式布局

    通过盒子宽度设置成百分比来根据屏幕的宽度来进行伸缩,不受固定像素限制,内容向两侧填充。...流式布局方式是移动web开发使用的比较常见的布局方式 max-width 最大宽度(max-height 最大高度) min-width 最小宽度(min-hight 最小高度) 京东首页案例...search-wrap {     position: fixed; /* 解决子盒子.search外边距合并问题 */     overflow: hidden;     height: 44px; /* 固定定位的盒子需给定宽度... ,且给百分比需在一定范围内*/     width: 100%;     max-width: 640px;     min-width: 320px; } /* 左右两个盒子用定位 不占位置*/ ....; } /* 品牌日 */ .main-content .brand div {     float: left;     width: 33.33%; } .main-content .brand div

    51150

    流体布局、响应式布局

    PC及移动端页面适配方法 设备屏幕有多种不同的分辨率,页面适配方案有如下几种: 1、全适配:响应式布局+流体布局 2、移动端适配: 流体布局+少量响应式 基于rem的布局 下面先来看看一个布局的问题...布局问题 首先写四个div ? 按照百分比来设定宽度,无论如何缩放浏览器,这四个div都会自动调整大小。那么如果设置一个边框呢? 设置边框 ?...max-width:768px){ .left_con{width:100%;} .right_con{width:100%;} } 看完上面的示例,下面再来实操一下看看。...当浏览器缩放宽度小于800px,那么div的大小就变为50% ?...当浏览器缩放宽度小于500px,那么div的大小就变为98% 这就是响应式布局了,根据宽度的变化,响应变化相关的样式,达到适配不同的浏览器大小。

    2K30

    从零开始学 Web 之 移动Web(七)Bootstrap

    100%. 2、.container-fluid :实现宽度为全屏 100% 的容器。...“行(row)”必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。...div class="col-xs-12 col-sm-6 col-md-4 col-lg-3">div> div> 解释:上面四个div,如果在超小屏幕上就 100%显示(占12栅格);在小屏幕上...,每个div占50%显示;在中等屏幕上,每个div占25%显示;在大屏幕上,每个div占33.33%显示。...因为: 如果在外层没有再包含container,那么嵌套列的宽度就是参参照当前所在的栅格; 如果外层添加了container,那么参照就是核心样式文件所设置的容器宽度 div class="container

    5.7K30

    Grid网格布局入门

    div> div>1div> div>2div> div>3div> div> 上面代码中,最外层的div>元素就是容器,...上图是一个 4 x 4 的网格,共有5根水平网格线和5根垂直网格线。 三、容器属性 Grid 布局的属性分成两类。一类定义在容器上面,称为容器属性;另一类定义在项目上面,称为项目属性。...33.33% 33.33%; } (1)repeat() 有时候,重复写同样的值非常麻烦,尤其网格很多时。...grid-template-columns: repeat(2, 100px 20px 80px); 上面代码定义了6列,第一列和第四列的宽度为100px,第二列和第五列为20px,第三列和第六列为80px...grid-template-columns: 100px auto 100px; 上面代码中,第二列的宽度,基本上等于该列单元格的最大宽度,除非单元格内容设置了min-width,且这个值大于最大宽度。

    2.1K20

    移动端常用适配方案四

    DOCTYPE html> 移动端常用适配方案四 的是不是通过将整个视口大小进行缩小的,但是在视口缩小之后我们里面的内容并没有随之而然的进行缩小,这个原因其实也很简单,在如下代码我设置了视口的宽度等于设备的宽度,然后在获取了一下视口的宽度...iphone5 上面输出的视口宽度也为 320 没问题:图片然后我在将上面我们进行缩放的代码添加之后再次打印结果如下: 移动端常用适配方案四补充 变为了 640 960 那么这个时候你就会发现已经与视口的宽度是一个一一对应的关系了,然后在一一对应关系的视口当中先进行布局,布局完毕之后在放入真正视口当中,然后在进行缩小一半,然后正是因为它们是一一对应的关系所以说你看到的界面就没有变小了

    26000

    一文搞定各类前端常见布局方式

    */ margin-left: -100%; /* 向左移动自身宽度到目标位置 */ position: relative; left: -100px;}/* 【step3】处理right *...">rightdiv>div>div id="footer">footerdiv>【step2】处理left设置 left 的 margin-left 为 -100%,实现 left 从当前行移动到上一行...变 table 后,默认宽度从 100% 变为 0,需要设置父节点宽度为 100%.col1 { background-color: red; }.col2 { background-color...后,默认宽度从 100% 变为 0 */ width: 100%; display: table;}.col1, .col2, .col3, .col4 { height: 100px; display...如设计稿宽度为 750px,一个设计稿宽 25px 的 div,设置 width: 0.25rem; 即可10.3 @media 媒体查询针对不同屏幕分辨率定义不同样式,从而达到自适应效果,例如移动端和

    2K30

    【CSS】340- 常用九宫格布局的几大方法汇总

    原理 原理:外层box盒子overflow和ul元素宽度死值相结合 其实换一种角度和思路,又是一个解决方法,不用margin负值,我们想要li要对其ul两端效果,之所以纠结是因为li又需要margin-right...关键点 1. page最外层的父元素使用absolute负责占位,给子元素们把空间拉开。或者用宽高也行 ? 2. 每一个块的父元素list利用浮动和33.33%的宽度百分比实现横向自适应排列 3....设置每一行中单个元素的宽度: grid-template-columns,每个宽度值100px根据业务需要设置。 给三个设置了宽度就长这样了。 ? 3....grid; grid-template-columns: 100px 100px 100px; grid-template-rows: 100px 100px 100px; }...如果移动求快准狠,就用后几招。 ? 至此,布局篇告一段落~

    1.3K10
    领券