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

【Web前端】CSS传统布局方法(补充)

一、CSS Grid 出现之前的布局与网格系统 在 CSS Grid 诞生之前,前端开发者通常使用 ​​float​​、​​inline-block​​、​​positioning​​、​​table​​...每一列都具有固定的宽度,并通过 ​​margin​​ 保持间距。 3.2 创建液态网格 液态网格可以根据视口宽度自动调整列的宽度。通过使用 ​​calc()​​ 函数,可以轻松地进行计算。...​​calc()​​ 函数来减去列之间的间距,使得列的宽度能根据视口的宽度自动调整,创造出更灵活的网格布局。...核心特性: 基于Flexbox或CSS Grid:用户可以选择使用​​flexbox​​或​​CSS Grid​​进行布局。 12列布局:同样的12列布局系统,每行最多容纳12个网格单位。....grid-x​​:表示水平布局(x轴方向)。 ​​.cell​​:每一个网格单元。 ​​small-4​​:表示在小屏幕及以上的设备中,每个单元占4个网格单位(共12个单位)。

8610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    2022 年的 CSS 全览

    视口单位 在新的视口变体之前,web提供了物理单位来帮助适应视口。有高度、宽度、最小尺寸 (vmin) 和最大边 (vmax)。这些对很多事情都有效,但移动浏览器带来了复杂性。...在移动设备上,加载页面时,会显示带有 url 的状态栏,此栏会占用部分视口空间。在几秒钟和一些交互之后,状态栏可能会滑开,以便为用户提供更大的视口体验。...但是当该条滑出时,视口高度发生了变化,任何 vh 单位都会随着目标大小的变化而移动和调整大小。...这个想法是让开发人员和设计人员能够选择他们想要在给定场景中使用的单位。当状态栏消失时,也许可以稍微改变一下不协调的布局,这样就可以不用担心使用dvh(动态视口高度)。...以下是新视口变体提供的所有新视口单位选项的完整列表: /* 高度视口单位 */ .new-height-viewport-units { height: 100vh; height: 100dvh

    4.2K20

    一文学会使用 CSS 中的 min(), max(), clamp() 以及它们的使用场景用例

    否则,如果50%计算值小于500px,则50%将用作宽度的值,假设视口的宽度是 900px, 最终元素的宽度为 900px x 50% = 450px。...否则,如果50%计算值大于500px,则50%将用作宽度的值,假设视口的宽度是 1150px, 最终元素的宽度为 1150px x 50% = 575px。...甚至百分比值也可以基于视口宽度(如果元素直接位于中),也可以基于其父元素。...如果视口足够大,我们可以根据视口的大小动态增加侧边栏宽度,这里我们可以使用max()函数为其设置最小宽度。...editors=1100 Grid Gap 在一个使用风格布局的界面上,如果我们想根据视口大小来调整网格之间的间距,使用 clamp() 是很容易做到的: .wrapper { display:

    83021

    如何使用Flexbox和CSS Grid,实现高效布局

    虽然 Flexbox 和 CSS Grid 可以完成类似的布局,但是本次,我们学习的是如何组合使用这两个工具,而不是只选择其中的一个。...在不久的将来,当 CSS Grid 布局获得完整的浏览器支持时,设计人员就能够利用每个 CSS 组合的优势,来创建最有效和最有趣的布局设计。...测试 Flexbox 和 CSS Grid 的基本布局 我们从一个很简单且熟悉的布局类型开始,包括标题,侧边栏,主要内容和页脚等部分。通过这样一个简单的布局,来帮助我们快速找到各种元素的布局方法。...下面是需要创建的内容: 要完成这个基本布局, Flexbox 需要完成的主要任务包括以下方面: 创建完整宽度的 header 和 footer 将侧边栏放置在主内容区域左侧 确保侧边栏和主内容区域的大小合适...尤其在控制列表元素样式和设置导航与按钮之间的间距方面,特别有用。 使用 CSS Grid 创建布局 为了测试效率,接下来使用 CSS Grid 创建相同的基本布局。

    3.5K10

    CSS Viewport 单位,很多人还不知道使用它来快速布局!

    在本文中,我们将学习 CSS Viewport units(视口单位)以及如何使用它们,并用列举一些常见问题及其解决方案和用例,让我们开始吧。...视口单位基于页面的根元素,而百分比则基于它们所在的容器。因此,它们彼此不同,但各自都有各自的用处。 视口单位的用例 字体大小 ? CSS 视口单位非常适合响应式排版。...为了解决这个问题,我们需要给内容(content)一个高度,它等于视口高度- (header + footer)。动态地做到这一点是很困难的,但是使用CSS的视口,这是很容易的。...通过使用CSS网格和视口单位,我们可以使其完全动态的响应式。...纵横比 我们可以使用vw单位创建响应元素,以保持其纵横比,而不管视口大小如何。 首先,需要先确定所需的纵横比,对于此示例,使用9/16。

    3.3K30

    响应式web设计 转

    :   width 视口宽度   height 视口高度   device-width 设备屏幕的宽度   device-height 设备屏幕的高度   orientation 横向还是纵向状态...逐行 interlace 隔行   grid 检测输出设备是网格设备还是位图设备   上述除了scan和grid之外都可以使用min和max来创建一个查询范围  为ie8及更低版本加入媒体查询的工具...让图片随视口缩放   要先删除图片标签的宽度和高度属性,再设置百分比。   ...css网格系统   框架:Sematic Skeleton LessFramework , 1140 css Grid,Colummal ,960.gs  常用网格类名:   row,container... 用来包裹独立的内容片段   元素用来表示与页面主内容松散相关的内容,经常可用做侧边栏,另外,引文、广告以及导航元素也可以使用它   :如果页面中有一组使用

    3.6K10

    使用Grid和Flex打造响应式布局:让你的网站“随遇而安”

    Flexbox布局非常适合用于一维布局,可以轻松实现元素的排列和对齐。我们可以把网站的导航栏、内容区域和侧边栏都放在一个Flexbox容器中,然后根据设备的屏幕大小自动调整它们的排列和样式。...比如,在小屏幕设备上,我们可以把导航栏变成一个汉堡菜单;在大屏幕设备上,我们可以把导航栏水平排列。当然啦,这只是一个简单的示例,实际的响应式设计可能会更加复杂和繁琐。...媒体查询是CSS3中引入的一项强大功能,它可以让我们根据设备的特性(如屏幕宽度、高度、方向等)来应用不同的CSS样式。简单来说,媒体查询就像是一个翻译器,让我们的网站能够“看懂”设备的语言。..., 20px);}在这个例子中,字体大小的最小值为14px,最大值为20px,首选值为视口宽度的2%。...这样,当视口宽度变化时,字体大小会自动调整,既不会太小也不会太大。容器查询:让布局“随遇而安”容器查询是CSS Houdini中引入的一项新特性,它可以让我们根据元素的尺寸来应用不同的CSS样式。

    70221

    一个侧边栏导航组件实现思路

    桌面到移动设备响应式布局演示 用了哪些技术 在这次组件探索中,我很高兴地结合了一些关键的网络平台特性: 伪类 CSS Grid transforms 媒体查询和用户偏好 CSS 用户增强体验 我的解决方案只有一个侧边栏...,只有在“移动”视口为540px 或更小时才能切换。...不过,使用网格区域语法,可以为同一行或列分配多个元素。 Stacks 主要的布局元素 #sidenav-container 是一个网格,它创建了 1 行和 2 列,其中 1 列被命名为 stack。...当空间受到限制时,CSS 会将所有 元素的子元素赋给同一个网格名称,将所有元素放在同一个空间中,创建一个堆栈。...3D transforms 我们的布局现在是堆叠在一个移动视口大小。除非我添加一些新的样式,否则它将默认覆盖我们的文章。

    3.6K40

    Dash应用页面整体布局技巧

    ,可以利用css中的calc()动态计算高度,即页面视口整体高度100vh减去页首部分占据的64px高度: 本示例完整代码见文章开头附件地址中的app1.py。...示例3:固定的侧边菜单栏+粘性页首+内容布局 在前面的两个例子中,我们的页面中充当导航作用的只有位于页首右侧的一级导航菜单栏,如果我们的应用功能进一步复杂起来,需要在当前一级菜单栏对应页面下再设立二级导航菜单...,经典的方式是像下面的例子那样,在原本的内容区中分出一部分宽度放置侧边菜单栏: 且为了更现代化的交互效果,新加入的侧边菜单栏是处于固定状态的,与内容区域相互独立: 要实现这样的经典页面布局效果,我们只需要在前面示例...2的基础上,将下方内容区域改造成基于fac网格系统的新布局即可: 其中涉及到固定侧边菜单栏的部分,重点在于为菜单栏容器基于calc()动态计算高度值,即扣除页首高度之后的剩余部分,并通过overflowY...属性开启竖向滚动条,而最关键的固定效果则同样是基于AntdAffix实现的,只不过这里的offsetTop需要考虑页首部分高度,所以设置为64: 本示例完整代码见文章开头附件地址中的app3.py。

    58420

    响应式网页设计:使用媒体查询、视口单元和流体布局的技术

    媒体查询 媒体查询是响应式网页设计的基石。它们允许开发人员根据设备的特征(例如宽度、高度和方向)应用 css 样式。通过使用媒体查询,您可以为不同的屏幕尺寸创建不同的布局。...视口单位 视口单位是相对单位,可以轻松创建可扩展的设计。它们包括 vw(视口宽度)和 vh(视口高度),它们是视口尺寸的百分比。这些单位对于设置适应视口大小的尺寸和间距特别有用。...使用 clamp() 实现响应式字体大小 使用clamp()函数可以创建流畅的排版,可以在不同的屏幕尺寸上平滑调整。 clip() 函数采用三个值:最小值、首选值和最大值。...组合技术 结合媒体查询、视口单元和流体布局,您可以创建高度响应且灵活的网页设计。...(min-width: 1024px) { .grid-item { flex: 1 1 31%; } } 在这个组合示例中,版式使用clamp()函数随视口缩放,标题高度使用clamp

    20210

    移动端自适应的常见手段

    CSS 像素是逻辑像素。 为了在不同尺寸和密度比的设备上表现出一致的视觉效果,使用逻辑像素描述一个相同尺寸的物理单位。在具有高密度比的屏幕下,一个逻辑像素对应多个物理像素。...CSS 布局会基于布局视口进行计算。移动设备的浏览器基于虚拟的布局视口去渲染网页,并将对应的渲染结果缩小以便适应设备实际宽度,从而可以完整的展示站点内容且不破坏布局结构。...使用现代响应式布局方案 除了使用浮动布局和百分比布局外,目前比较常见的是使用 Flexbox 或 CSS Grid 来实现灵活的网格布局。...Flex Item 的宽度或高度由项目中的内容决定。Flex Item 根据其内部内容和可用空间进行增长和缩小。CSS Grid 专注于精确的内容布局结构规则。...每个 Grid Item 都是一个网格单元,沿水平轴和垂直轴排列。如果允许内容灵活的分配空间则使用 Flexbox;如果需要准确控制布局中项目的位置则使用 CSS Grid。

    1.9K00

    响应式布局,你需要知道这些

    设备像素与CSS像素的区别是什么? EM,REM 的计算规则是什么?实际应用中如何选择? 什么是视口 viewport,布局视口,视觉视口,理想视口的区别? 百分比单位和视口单位的计算规则是什么?...所以我们在实际开发中通常使用 CSS 像素,你眼中的 1px 可能对应多个设备像素,比如上面的 IPhone X, 1 css px = 3 * 3 device px // IPhone X 中,1...layout viewport 为了解决早期 Web 页面在手持设备上的显示问题,Apple 在 IOS Safari 中定义了一个 viewport meta 标签,它可以创建一个虚拟的布局视口(layout...1vh = 1% 视口高度 以 IPhone X 为例,vw 和 CSS 像素的换算如下, 基于轴线,只能解决一维场景下的布局,作为补充,W3C 在后续提出了网格布局(CSS Grid Layout),网格将容器再度划分为 “行” 和 “列”,产生单元格,项目(子元素)可以在单元格内组合定位

    1.8K20

    使用内联的 CSS 变量技巧,提高灵巧布局效率!

    作者:Ahmad shaded 译者:前端小智 来源:sitepoint 有些情况下,我需要用一种简单的方法来创建网格布局。 例如,每次我改变主意时,在不修改CSS的情况下快速画出五列网格。...如果该变量特定于组件,则可以在该组内声明中定义它。 在下面的例子中,我定义了一个全局变量--size,它用于square 元素的宽度和高度。...CSS网格示例 侧边栏和主内容 ? 在此设计中,我将CSS网格用于以下各项: 边栏和主菜单 表单项 三列布局 侧边栏的宽度是固定的,主内容是变化。假设侧边栏的宽度是240px。...三列布局 在下面的示例中,我添加了--repeat-number:3和--gap:8px作为内联CSS。 这些变量将添加到o-grid类,网格的设置将基于这些变量。...我经常使用Grid minmax,但是当我在多个页面上使用它时,我遇到了一个问题。 让我们举一个不使用 CSS 变量的基本示例。 ?

    3.3K10

    使用内联CSS 变量,提高灵巧布局效率!

    有些情况下,我需要用一种简单的方法来创建网格布局。 例如,每次我改变主意时,在不修改CSS的情况下快速画出五列网格。 在本文中,我们一起探索一些用例,并思考如果实现及使用它们。...如果该变量特定于组件,则可以在该组内声明中定义它。 在下面的例子中,我定义了一个全局变量--size,它用于square 元素的宽度和高度。...CSS网格示例 侧边栏和主内容 在此设计中,我将CSS网格用于以下各项: 边栏和主菜单 表单项 三列布局 侧边栏的宽度是固定的,主内容是变化。假设侧边栏的宽度是240px。...三列布局 在下面的示例中,我添加了--repeat-number:3和--gap:8px作为内联CSS。 这些变量将添加到o-grid类,网格的设置将基于这些变量。...我经常使用Grid minmax,但是当我在多个页面上使用它时,我遇到了一个问题。 让我们举一个不使用 CSS 变量的基本示例。

    2.1K50

    最全的常见css布局

    //html部分同上 .parent { display:flex; } .right { margin-left:20px; flex:1; } 3.Grid 布局 Grid 布局,是一个基于网格的二维布局系统...> CSS Grid 是创建网格布局最强大和最简单的工具。...两种布局方式的不同之处在于如何处理中间主列的位置: 圣杯布局是利用父容器的左、右内边距+两个从列相对定位; 双飞翼布局是把主列嵌套在一个新的父级块中利用主列的左、右外边距进行布局调整 四、等高列布局 等高布局是指子元素在父元素中高度相等的布局方式...{ background: #00f; } 4.使用边框和定位 这种方法是使用边框和绝对定位来实现一个假的高度相等列的效果。...,与 wrap 没有任何嵌套关系 (2)wrap 区域的高度通过设置 min-height,变为视口高度 (3)footer 要使用 margin 为负来确定自己的位置 (4)在 main 区域需要设置

    1.7K10

    新时代布局中一些有意思的特性

    gap 属性的优势在于,它避免了传统的使用 margin 的时候需要考虑第一个或者最后一个元素的左边距或者右边距的烦恼。正常而言,4 个水平的 flex item,它们就应该只有 3 个间隙。...: masonry 是 firefox 在 firefox 87 开始支持的一种基于 grid 布局快速创建瀑布流布局的方式。...从 firefox 87 开始,在浏览器输入网址栏输入 about:config 并且开启 layout.css.grid-template-masonry-value.enabled 配置使用。...在之前,对于同个样式,我们如果希望根据视口大小得到不一样效果,通常使用的是媒体查询。 但是,一些容器或者组件的设计可能并不总是与视口的大小有关,而是与组件在布局中的放置位置有关。...Demo 媒体查询与容器查询的异同,通过一张简单的图看看,核心的点在于容器的宽度发生变化时,视口的宽度不一定会发生变化: ?

    2.2K10

    【CSS3——页面布局】画一只考拉(蓝桥杯真题-2341)【合集】

    背景介绍 CSS3 的 Flex 弹性布局和 Grid 网格布局已经成为前端页面排版的主流选择。 本次挑战将使用这两种布局方式来画一只考拉。...CSS 考拉:设置页面的标题,显示在浏览器的标签栏上。...详细解释 全局样式: html, body:设置整个页面的背景颜色为 #f8d8ab,宽度和高度分别为视口的宽度和高度。使用 Flexbox 布局将页面内容在水平和垂直方向上居中显示。...使用 z-index: 1 确保脸部显示在耳朵上方。开启 Grid 布局,定义了 6 列和 4 行的网格结构,用于定位脸部的各个元素。...鼻子样式: .nose:设置鼻子的高度为 100%,背景颜色为 #3b464f,通过设置不同的边框圆角塑造鼻子的形状。使用 grid-area 属性指定鼻子在网格中的位置。

    6700

    万字总结 CSS 布局

    清除浮动的另一个方法是在容器内创建BFC。一个BFC元素完全包裹住了它内部的所有元素,包括内部的浮动元素,保证浮动元素不会超出其底部。....container { display: flow-root; } 3. 定位 想要把一个元素从正常流中移除,或者改变其在正常文档流中的位置,可以使用CSS中的position属性。...当页面滚动时,固定的元素会留在相对于视口的位置,而其他正常流中的内容则和通常一样滚动。 当你想要一个固定导航栏一直停留在屏幕上时这会非常有效。...网格布局 5.1 Grid 布局是什么 网格是一组相交的水平线和垂直线,它定义了网格的列和行。CSS 提供了一个基于网格的布局系统,带有行和列,可以让我们更轻松地设计网页,而无需使用浮动和定位。...5.3.8 grid-auto-columns 属性, grid-auto-rows 属性 有时候,一些项目的指定位置,在现有网格的外部。比如网格只有3列,但是某一个项目指定在第5行。

    5.7K20
    领券