首页
学习
活动
专区
工具
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来说是...div100%是从其上一级div宽高继承来,有一点很关键,就是要设置div100%显示,必须设置其上一级div宽度或高度,否则无效。...举例说明:父div(deman)宽300高200,子div(cc)如果在这个条件下设置divcc宽高都为100%的话,那cc的确切大小就是父div大小(宽300高200),尝试中你会发现,div显示会受自身和其上一级...同时,让人高兴是,这样设置css样式不存在浏览器兼容问题,IE5.5、IE6、IE7、IE8还有火狐均可正常显示。

3.8K20

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

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

87410
  • 关于移动百分比宽度几种实现

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

    93190

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

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

    1.3K10

    栅格化系统原理以及实现

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

    1.6K40

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

    , 放置 单独 标签中 , 每个 标签中放置一个 链接标签 , 链接标签中包裹一个 图片 ; <!..., 如果子元素横向累加宽度超过 当前宽度 , 会自动换行 , 因此这里为每个子元素设置一个 1/3 宽度 , 即 33.33% ; 子元素 设置浮动和宽度样式如下 : .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

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

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

    56720

    万字总结 CSS 布局

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

    5.7K20

    移动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

    50950

    流体布局、响应式布局

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

    2K30

    Grid网格布局入门

    1 2 3 上面代码中,最外层元素就是容器,...上图是一个 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

    【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

    从零开始学 Web 之 移动Web(二)JD移动网页,移动触屏事件

    一、案例:JD移动网页 相关源码已放置 Github 以下为详细 html 源码: <!...使用 js 动态最后位置,添加原始第一张图片;开始位置,添加原始最后一张图片。 重新设置图片盒子宽度和图片宽度,并且放大缩小视口大小时候,自动改变宽度。...开启定时器,自动轮播 添加移动滑动事件,手动轮播。 添加过渡效果结束事件,解决手动滑动到第一张和最后一张时,出现空白问题。 设置小白点,自动轮播和手动轮播两个地方添加。...clientX/clientY:手指触摸点相对视口(移动屏幕左上角)距离。 pageX/pageY:手指触摸点相对当前页面的左上角距离(当前页面可能有滚动条,所以距离包含滚动距离)。...而,一般当我们移动设置了 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no

    2.7K10

    css设计中不变与可变

    移动可变与不变 有很多刚入门移动重构的人一般都会问一个问题,移动是不是都要用百分比啊。其实抛开那些新单位rem、vw、vh等,移动除了百分比,px也是可以用,根本不是你想象那样。...全屏图片滚动 全屏这个东西,vw还不能使用情况下,那非100%莫属了(这里全屏是指宽度铺满整个屏幕,不包括高度)。...这个估计90%移动都有这个效果,当然不可能设计给你是375px稿子,然后你就做了个375px宽度效果。...,可以使用技术有flex,float,table-cell等,其中float应该是最low,因为你必须要设置item宽度,三等分设置33.33%,四等分设置25%等,这种重复利用性太low,已经不适合更高级移动端了...,总之,移动可变因子比pc上更多,更多宽度或高度不确定,就需要各种方法去避免直接设置死宽度或高度,当然庆幸是,css3支持让这些不确定因素控制变得趋向简单。

    71910
    领券