全响应网格化_建立一个新压缩的响应网格系统

全响应网格化

我想和你谈谈柠檬水 。 不是提神的柑橘饮料,而是我创建的网格系统。

Lemonade是一个网格系统,旨在使设计人员和开发人员有信心建立完全响应的网站,从而消除了浏览器之间寻找错误和错误的轻拂带来的挫败感。 让我们看看它是如何组合在一起的,以及如何构建自己的响应式网格系统。


选择正确的网格

在构建自己的布局之前,我经常使用Skeleton.css进行响应式布局。 但是,随着时间的流逝,我觉得那是一个失败的事业,仅仅是因为我不断地根据自己的需要调整它,并剥离掉我认为不可用的不必要的元素。 这是一个非常好的框架,但是我只推荐给完全不熟悉前端工作的人。

那里有很多网格,框架和库,但是选择正确的网格是一个艰难的决定。 最简单的决定方法是问自己“我要做什么?” 例如:我目前正在构建CMS(主要是PHP),并且我根本不想专注于界面(管理面板),因此我选择了Bootstrap 。 Bootstrap是一个非常全面的框架,在设计过程的各个方面都会照顾您。


当生活给你柠檬

我真的很想做些能让我完全控制的事情,而我不必花大部分时间自定义网格。 首先,我认为制作网格将是在公园里散步,实际上我以为可以在几个小时内完成。 在2013年6月24日上午12:30左右,我打开了编辑器并开始编写代码,其中包括很多代码。 但是,出乎意料的是,这很难走。 您如何创建已经创建了数百次但更好的东西? 我需要提前考虑,我需要创建它自己希望它如何工作,而不是我认为网格系统应该如何工作,因此我为自己设定了三个目标(我将它们写在便签上并贴在墙上):

  • 体积小,但功能强大
  • 保持现代
  • 有用

让我更详细地介绍这些目标。 我希望网格很小,以至于即使我不得不对其进行编辑,也不会因为沮丧而在屏幕上咒骂。 它需要在现代浏览器上工作(忘记IE8及更低版本); 我想消除浏览器打滑的情况,这种情况担心一切看起来都不错。 最终目标是使用它,我不想做任何事情,只是将其粘贴在GitHub上,而不再使用它。 如果要创建某些东西,则需要在我制作的每个项目中使用它。


让我们开始吧

首先让我们解决CSS。 记住第一个目标:“小而有力量”

*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  /* Removes padding behaviour on widths */
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

/* Attribute selector */
[class*='bit-'] {
  float: left;
  padding: 10px;
}

/* Floats last ".bit-" to the right */
[class*='bit-']:last-of-type {
  padding-right: 10px;
  float: right;
}

/* Clearfix */
.frame:after {
  content: "";
  display: table;
  clear: both;
}

从本质上讲,这是网格的Struts。 这就是使网格起作用并将整个事物结合在一起的原因。

使用通用选择器设置边框,使我们不必担心元素的填充会干扰宽度。

在讨论选择器的同时,网格中最大的空间杀手是属性选择器 。 您可以在我使用[class*='bit-']地方看到selctor属性。 它以class属性包含 “ bit-”的所有元素为目标。 我们还可以使用[class^='bit-']来定位类以“ bit-” 开头的所有元素。 使用属性选择器包含我们所有的各种列类,可以在编写新的列宽时为我们节省大量时间。

需要注意的另一件事是使用类型最后选择器[class*='bit-']:last-of-type 。 每行“位”将包含在一个frame元素中:

<div class="frame">
     <div class="bit-2"></div>
     <div class="bit-2"></div>    
</div>

使用类型最后选择器,我们可以将组中的最后一个“ bit-”元素作为目标,指示其向右浮动而不是向左浮动。 这可以确保在支持浏览器中所有内容都与右侧完全对齐。

关于柠檬水,我经常听到一个常见的问题:“为什么这么奇怪的类名?”这不是一个令人兴奋的故事,我只是在笔记中一直将这些列称为“位”,因此从那里逐渐升级。 这样说,我想我下意识地希望这些类不同于在许多其他网格系统中看到的标准“ col-1”。


宽度

我使用计算器生成了列的宽度(请参见,您不必是数学书呆子)。 计算列一点都不困难,实际上这确实很容易。 例如,在我的网格中,每个位是整个宽度的一部分,位8是八分之一。 因此100÷8 = 12.5,因此我们将每个bit-8的宽度设置为12.5%。

我用真实的内容彻底地测试了每个专栏的内容,它们在不同的浏览器和设备上都可以完美运行。

/* Main Widths */
.bit-1  {width: 100%;}
.bit-2  {width: 50%;}
.bit-3  {width: 33.33%;}
.bit-4  {width: 25%;}
.bit-5  {width: 20%;}
.bit-6  {width: 16.6666666667%;}
.bit-7  {width: 14.2857142857%;}
.bit-8  {width: 12.5%;}
.bit-9  {width: 11.1111111111%;}
.bit-10 {width: 10%;}
.bit-11 {width: 9.09090909091%;}
.bit-12 {width: 8.33%;}

现在,您可以看到,这些宽度非常干净,可读,这正是我最初想要的-您可以轻松地查看内容,并在需要时轻松地弄乱和编辑尺寸。


自定义列

编辑Lemonade非常简单。 网格系统经常令人生畏,因此我向自己挑战,要使我的工作尽可能简单。 自定义Lemonade的唯一规则是: 只要您的列等于100%,它就会完美工作 。 添加自己的位很简单,因为属性选择器负责大多数网格结构:

.bit-25 {width:25%;}
.bit-75 {width:75%;}

两者结合起来就可以了。

<div class="bit-25"></div>
<div class="bit-75"></div>

思维敏捷

要使其具有响应能力是非常具有挑战性的,要使其在每个设备上都完美并确定断点,将非常令人沮丧。 让我来遍历代码。 我选择降低桌面性能,而不是首先使用移动设备,但是哪种方法完全取决于您。

大盘

我们已经设置了基本宽度,现在让我们定位800px至1100px之间的设备:

/*base tablet to small desktop styles*/
@media (min-width: 800px) and (max-width: 1100px) {
  .bit-2,
  .bit-7 {
    width: 100%;
  }

  .bit-4,
  .bit-8,
  .bit-10,
  .bit-12 {
    width: 50%;
  }
}

我们可以将这大致描述为将Landscape Tablet定位到台式机(尽管请注意,设备宽度绝不是一成不变的)。 这和其他媒体查询一样重要-为什么? 因为我发现拥有13英寸笔记本电脑的大多数人很少具有全角浏览器,所以他们将缺少全角浏览器几百个像素,因此横向平板电脑上看起来不错的东西,台式机上也应该看起来不错。

较小的

/*base tablet styles*/
@media (max-width: 800px) {
.bit-4,
  .bit-6,
  .bit-8,
  .bit-10,
  .bit-12 {
    width: 50%;
  }

  .bit-1,
  .bit-2,
  .bit-3,
  .bit-5,
  .bit-7,
  .bit-9,
  .bit-11 {
    width: 100%;
  }
}

我想将这个范围视为将移动设备定位到平板电脑的范围(尽管如此,通过屏幕分辨率定义设备仍然是一个艰难的领域)。 为什么会有奇怪的断点? 没什么太疯狂的,这只是效果最好的-在宽度必须有多严格方面,网格非常繁琐,而且我发现这些断点在野外效果很好。

色谱柱尺寸的独特性很难创造,这实际上是我大部分时间用于研究的内容。 您通常会在台式机上看到哪些内容在移动设备上发生巨大变化? 主要是内联内容变成堆叠的内容-因此,我不得不考虑的是,并排放置的内容比什么更可能并排放置。

小

/*base mobile styles - everything 100%*/
@media (max-width: 480px) {
  .bit-1,
  .bit-2,
  .bit-3,
  .bit-4,
  .bit-5,
  .bit-6,
  .bit-7,
  .bit-8,
  .bit-9,
  .bit-10,
  .bit-11,
  .bit-12 {
    width: 100%;
  }

这个断点解决了大多数人会认为是移动设备的问题。 我试图通过设置移动设备的宽度来变得更具创意,但是我觉得我需要保持基本的水平,因为我想大多数人都不会寻找某种地铁布局或类似的东西。

HTML

HTML非常简单,这就是此网格的优点。 为了继续我们的示例,让我们制作一个三格列(例如可以是画廊)。

<div class="frame">
     <div class="bit-3">
          <img src="http://placekitten.com/800/400" />
     </div>
     <div class="bit-3">
          <img src="http://placekitten.com/800/400" />
     </div>
     <div class="bit-3">
          <img src="http://placekitten.com/800/400" />
     </div>
</div>

那里有一个三列响应式浏览器兼容图库。 当然,您可以使用HTML并进行所有类型的布局。


结论

建立Lemonade对我来说是一个很大的学习曲线,它告诉我,如果我对某些东西不满意,那么我就不必坚持下去,而不必等待替代方案-我可以创建自己的方案!

希望本教程对您创建一些很棒的东西有所帮助。 看看野外的一些站点,看看其他人如何使用它:

如果您有任何疑问或问题,请在下面发表评论,或随时发给我 。

翻译自: https://webdesign.tutsplus.com/articles/build-a-freshly-squeezed-responsive-grid-system--webdesign-14888

全响应网格化

【ESP32-IDF笔记】20-配置以太网网络(W5500) 基于ESP32IDF和官方的ethernet驱动,配置W5500以太网驱动芯片,实现ESP32的有线网络 阅读详情

相关推荐

使用 arxiv-sanity 实时跟进自己研究领域的Paper

介绍 arxiv.org是一个非常大的预印本资源库,里面有大量的最新的论文,但缺点是浏览、搜索和排序不是很方便。这个资源库每天会更新大量的论文,如果通过手动搜索和浏览则效率很低,高引用的好文章难以及时的找到并阅读,造成时间的浪费。因此 使用 ...

John's Blogs 8280

基于2023年行政区划数据的3种应用:地理围栏、地址解析与网格化管理实战

本文深入探讨2023年行政区划数据在三大实战应用中的高效利用:地理围栏技术、地址解析服务与网格化管理优化。通过PostGIS空间数据库和12位编码体系,实现毫秒级地理围栏API和亚秒级反向地理编码服务,并结合村级边界数据优化网格分区策略,显著提升智慧城市与物流配送等场景的运营效率。

weixin_34178244的博客 650

当交警手势遇见边缘计算:轻量化手势识别系统的落地挑战

本文探讨了边缘计算环境下交警手势识别系统的技术挑战与解决方案,结合OpenPose和LSTM算法优化,实现轻量化部署。通过深度可分离卷积、量化感知训练等技术创新,在算力受限的边缘设备上达到高效实时识别,为智能交通系统提供可靠支持。

weixin_29079671的博客 636

[性能优化&工具类] 批量Mesh网格压缩

批量模型的mesh 压缩处理

Mr_PEaSutBUtteR的博客 872

STM32硬件SPI驱动W5500以太网模块全流程(附避坑指南)

本文详细介绍了如何使用STM32硬件SPI驱动W5500以太网模块,包括开发环境准备、SPI接口配置、网络参数设置及常见问题排查。通过官方驱动移植和实战案例,帮助开发者快速实现以太网通信功能,适用于智能家居、工业控制等物联网应用场景。

weixin_29192141的博客 364

高速PCB设计中串扰的成因、影响与实战控制策略

在高速数字电路与硬件系统设计中,信号完整性是确保系统稳定可靠的核心基础。其核心原理在于,当信号在传输线上传播时,会伴随产生电场与磁场,若相邻导线距离过近,便会通过电磁场耦合产生不期望的能量转移,即串扰。这一现象会直接导致信号波形畸变、时序偏移和噪声裕量降低,严重影响系统性能。从技术价值看,深入理解并有效控制串扰,是提升数据传输速率、保障系统稳定性和降低误码率的关键。其应用场景广泛覆盖了从高速SerDes链路、DDR内存接口到高精度模拟电路等几乎所有现代电子系统。本文聚焦于高速PCB设计中的串扰问题,系统剖析

weixin_27625589的博客 576

网格系统:响应式布局

窗口小于576像素的时候就会显示一列 List item

weixin_43706224的博客 307

GPU运维工程师入门指南 (第九篇): 高性能网络 - InfiniBand与RDMA技术

本文介绍了支撑AI分布式训练的高性能网络技术InfiniBand和RDMA。传统TCP/IP网络因内核开销和内存拷贝成为性能瓶颈,而InfiniBand提供高带宽、低延迟的专用网络,RDMA则通过内核旁路和零拷贝技术实现节点间内存直接访问,显著提升通信效率。特别介绍了GPUDirect RDMA技术,使GPU显存可直接通信。文章还列举了运维人员在部署这些技术时需要考虑的硬件、驱动、配置和监控等关键点。这些技术共同构成了支撑大规模AI集群的"数据高速公路",为后续讨论存储性能瓶颈奠定了基础

weixin_42587823的博客 1097

响应式网格布局

前言:之前一直没有 学习bootstrap框架,所以就着这次机会就学习了一下bootstrap框架如何使用。首先先针对任务八提出的响应式网格布局总结一下,然后再总结一下bootstrap的基本使用方法。 一、任务八总结: 要求说明: 刚看到要求的时候完全不知道怎么下手,也是review了别人的代码之后才知道网格布局的实现原理。这里就算是学习总结一下,下次就知道怎么写了。 代码实现: <div

sunyueru的博客 1180

openclaw通俗入门系列9——流式传输 + 分块

流式传输 = 不等写完就开始发。分块流式传输是把长回复切成几条消息发(所有渠道),草稿流式传输是像打字一样实时显示(仅 Telegram)。可以配置块大小、发送时机、合并规则、类人延迟。

m0_60605453的博客 506

手机开发实战58——小区广播介绍2

业务 针对小区广播短消息的特点,可以提供一些基于目前短消息不能或不适合提供的服务: 1. 显示网络服务基站名称:用户可以随时了解手机登记在哪个基站下,特别是在边界交叉覆盖区域,用户可以清楚的知道通话建立在哪个基站下,在用户投诉和故障描述中也会有所帮助; 2. 提供用户问候信息:可以在覆盖机场、车站等地区的基站广播一些用户问候语或一些企业形象广告语; 3. 充分利用小区广播地

xjbclz的专栏 772

基于GIS、、geosever插件实现当地旅游资源网格化管理系统的架构

1.系统的简单介绍: 这种系统一般是

u010973529的专栏 1755

实验三、数字PID控制器的设计

由图可知,由于微分环节的作用,在曲线的起始上升段出现了一个尖锐的波峰,之后曲线也呈衰减的振荡:随着Td增加,系统的超调量增大,但曲线尖锐的起始上升阶段后响应速度减慢,可以看出Td越小。对大多数算法,缩短采样周期可使控制回路性能改善,但采样周期缩短时,频繁的采样必然会占用较多的计算工作时间,同时也会增加计算机的计算负担,而对有些变化缓慢的受控对象无需很高的采样频率即可满意地进行跟踪,过多的采样反而没有多少实际意义。随着Kp的增加,闭环系统的超调量增加,响应速度加快,控制时间加长,稳态误差减少;

m0_51738372的博客 8023

怎么覆盖默认样式_BootStrap5响应式样式栅格系统断点默认值及调整方法

BootStrap5中,按照视口的最小宽度像素数将栅格分为6个宽度档次,设置了5个断点,以便使用相应的样式类名中缀进行样式分组。宽度档次 样式类名中缀 视口宽度(px,即view-port和min-width)超窄 无 <576px窄 sm ≥576px中 md ≥768px宽 lg ≥992px超宽 xl ≥1200px极宽 xxl ≥1400px如需使用其它的视口宽度断点来覆盖上述Boo...

weixin_34474759的博客 2160

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

TDesign布局系统最佳实践:构建响应式企业级应用

TDesign作为企业级设计系统,提供了强大的布局解决方案,帮助开发者快速构建响应式企业级应用。本文将详细介绍TDesign布局系统的核心概念、导航布局类型、网格系统及响应式设计实践,让你轻松掌握构建专业界面的秘诀。 ## 一、TDesign布局系统核心概念 布局是页面构成的基础模式,也是整个后端系统统一交互和视觉风格的基石。TDesign布局系统主要包含四个核心区域: - **内容区(Co

gitblog_00909的博客 462

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

动物森友会岛屿设计器:免费在线规划你的完美岛屿

你是否曾经在《动物森友会》中为岛屿布局而烦恼?不知道如何合理规划建筑位置、道路走向和景观搭配?Happy Island Designer 正是为你量身打造的免费在线岛屿设计器,让每个人都能轻松创建理想的岛屿布局。这个开源工具基于《动物森友会》的设计理念,提供了直观的网格系统和丰富的设计资源,帮助你摆脱游戏中的限制,自由规划梦想岛屿。 ## 为什么需要专业的岛屿设计工具? ### 游戏内设计的局

gitblog_00098的博客 72

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

「MD规范」1.1-Material Design设计案例讲解-Basil

one 点设计-木木翻译 Basil是一个菜谱app,使用了MD设计组件和主题创造了一个令人激动和易于探索的品牌体验。 目录 · 关于Basil · 产品解构 · 布局 · 色彩 · 排版 · 图标 · 组件 · 动效 关于Basil Basil为用户提供一道道由主厨和调味大师准备的菜谱。App的设计和品牌一样十分具有亲切感,并且充满了简明和令人喜悦的内容。 有趣但实用的美学 Basil采用了大...

u014552657的博客 796

终极岛屿规划指南:如何使用Happy Island Designer免费在线工具打造梦想岛屿

Happy Island Designer是一款专为《动物森友会》玩家设计的免费在线岛屿设计工具,通过直观的网格系统和实时预览功能,让每个人都能轻松规划梦想岛屿。这款完全开源的网格化编辑器支持多语言界面,为全球玩家提供专业的岛屿规划体验。 ## 🎯 核心功能:网格化精准设计系统 Happy Island Designer的核心优势在于其精确的网格坐标系统。工具采用A-F列和1-6行的网格布局

gitblog_00299的博客 192

如何快速掌握岛屿设计:面向初学者的完整可视化编辑器指南

Happy Island Designer 是一款功能强大的免费在线岛屿设计工具,专为《动物森友会》玩家打造。这款网格规划器让你无需在游戏中反复试错,就能在浏览器中轻松创建和预览梦想岛屿布局。作为开源的可视化编辑器,它结合了精确的网格系统和创新的数据编码技术,让岛屿设计变得简单直观。 ## 🎯 为什么你需要这款岛屿设计工具? 想象一下:在游戏中移动建筑需要花费大量时间和铃钱,调整地形时难以预

gitblog_00386的博客 227

Happy Island Designer:免费在线岛屿设计工具的终极指南

你是否曾梦想在《动物森友会》中打造完美的岛屿,却苦于游戏内规划工具的限制?是否想要在动工前就能预览整体布局效果?Happy Island Designer正是为解决这些痛点而生的免费在线岛屿设计工具,让每个人都能轻松规划梦想岛屿。 ## 🏝️ 什么是Happy Island Designer? Happy Island Designer是一款专为《动物森友会》玩家设计的在线岛屿规划工具,它采

gitblog_00776的博客 206

猫抓插件完全教程:如何嗅探并下载网页中的任意视频资源

猫抓插件(cat-catch)是一款开源的浏览器资源嗅探扩展和视频下载工具。它自动识别页面加载的视频、音频与图片,支持 M3U8 流媒体解析、分片合并与解密,适合需要离线保存、素材收集或媒体调试的用户。 ## 嗅探是如何实现的:猫抓插件的能力机制 猫抓的核心思路是"在网络层截获,而不是猜链接"。扩展会在页面里注入一个捕获器(核心实现在 [catch-script/catch.js](https

gitblog_00487的博客 130

动物森友会岛屿设计终极指南:Happy Island Designer完整教程

想要打造完美的动物森友会岛屿,但游戏中的编辑工具不够直观?Happy Island Designer就是你的终极解决方案!这款免费在线岛屿设计工具专为《动物森友会》玩家打造,让你在浏览器中就能轻松规划梦想岛屿。无论你是刚入门的新手还是追求完美布局的老玩家,这个工具都能帮你实现从零到一的岛屿设计梦想。 ## 🎯 为什么选择Happy Island Designer? ### 告别试错,精准规划

gitblog_00220的博客 194

Windows 更新后多人远程连不上?RDPWrap 修复排查手册

RDPWrap 让 Windows 多用户远程桌面可行,多人可同时连进同一台主机。Windows 更新后这套 RDPWrap 修复流程常被触发,rdpconf 出现 not listening 或 not supported。 ## 📋 动手前准备:Windows 更新后 RDPWrap 失效先做这三件事 这一节采集三项信息,做完后你能判断该走哪条路线。 1. 按 Win+R 打开运行框,

gitblog_00094的博客 15

3步掌握岛屿设计:Happy Island Designer新手入门指南 [特殊字符]️

你是否曾在《动物森友会》等岛屿建设游戏中,面对空荡的地形感到无从下手?脑海中充满创意却不知如何实现?Happy Island Designer正是为你量身打造的专业岛屿设计工具!这个开源项目能让你轻松将创意想法转化为精确的岛屿规划方案,无需任何编程基础即可开始你的岛屿设计之旅。 ## 为什么你需要专业的岛屿设计工具? 🤔 在游戏中直接尝试不同布局需要大量时间和资源投入,而且无法提前预览效果。

gitblog_00335的博客 139

Happy Island Designer:打造梦幻岛屿的终极免费在线规划工具

你是否曾经在《动物森友会》中为岛屿布局而烦恼?是否想要一个简单易用的工具来规划你的梦想岛屿?Happy Island Designer正是为你量身打造的完美解决方案!这款开源在线工具让你轻松设计、规划和可视化岛屿布局,将创意变为现实。 ## 🏝️ 什么是Happy Island Designer? Happy Island Designer是一个专业的岛屿设计工具,灵感来源于《动物森友会》等

gitblog_01142的博客 218

从零开始设计你的梦幻岛屿:Happy Island Designer完全指南

你是否曾经在《动物森友会》中为岛屿布局而苦恼?想要创造完美的度假胜地却不知从何下手?**Happy Island Designer**——这款免费的在线岛屿设计工具正是为你量身打造的解决方案!这款动物森友会岛屿设计器让每个人都能轻松规划自己的理想岛屿,无需任何设计经验,即可创建专业级的岛屿布局。 ## 🌟 为什么选择Happy Island Designer? 想象一下,你刚获得一个全新的岛

gitblog_00595的博客 237
上一篇: css3 动画缩写顺序_使用CSS3深入研究高级顺序动画
下一篇: nivo slider_通过Nivo为Orman的图像滑块控件提供动力
daique1908
博客等级 码龄10年 29粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值