标签:VBA,自定义函数 有时候,我们需要创建一组不重复的随机组,例如在指定单元格区域中创建一组不重复的随机数用于模拟数据分析。 下面的一个VBA自定义函数,可用于创建指定数值范围的不重复随机数。...() '保存随机选择的结果 (随机排序) Dim SrcULimit As Long '源数组的上限....Next Result_Index Application.ScreenUpdating = True RandomSeq = TempArray_Result End Function 要在单元格区域...A1:A10000中创建从1至10000之间的不重复随机数,调用RandomSeq函数并实现目标的代码如下: Sub RandomSeq_Example_Usage() Dim TestArray()...Set DestRange = Range("A1:A" & (max - min + 1)) DestRange.Value = TestArray End Sub 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识
CSS Grid 是一种为 Web 开发创建网站布局的方式。它已经存在了很多年,随着更多浏览器的支持,它终于变得越来越流行。 接下来我们将了解下 CSS Grid 及其工作原理。了解下如何使用它。...CSS 网格架构 有两种使用 CSS 网格布局的方法:隐式和显式。使用隐式网格,您只需定义所需的列数,浏览器将自动创建网格。使用显式网格,您可以定义列数和行数。...提供控制项目放置在网格区域内后如何对齐以及网格整体对齐方式的能力。 提供使用像素创建使用固定轨道大小的网格的能力 - 将网格设置为适合您所需布局的指定像素。...创建网格布局 您需要首先定义一个容器元素并为其分配一个类名。此元素将包含您的所有内容。在容器内部,您将定义一系列子元素,每个子元素将占据网格的特定区域。您可以使用各种属性来控制这些元素的大小和位置。...grid-template-rows:此属性定义行数和每行的高度。 grid-gap:此属性定义列和行之间的空间。 网格子属性 CSS Grid 中的子属性用于定义网格项的大小、位置和其他方面。
最简单的方法就是使用auto,因为它会默认在隐式网格中创建网格轨道。一个自动大小的网格轨道将扩展到包含所有的内容。在下面的示例中,我有一个两列布局,在右边的列中添加更多的内容会导致整个行的扩展。...如何向网格区域添加背景和边框? 一个网格尚未完成的问题,网格区域本身的背景和边框的样式。能在网格区域上直接添加背景和边框的样式吗?...下面的这个示例中,我在网格中通过伪元素来完成,将其放置在基于行的位置,然后添加一个背景和边框到该网格区域。...当我们在显式网格之外放置一个网格项目,或者我们通过自动旋转更多的网格项目时,隐式网格就将被创建。...在很多情况下,隐式和显式网格的渲染行为是相同的,对于很多的布局,你会发现你定义了列,然后允许将行创建为隐式网格。不同的是,当你开始使用负的行号来引用网格的最后一行时,你会发现还是有一定区别的。
轨道 ❝轨道是两个相邻网格线之间的空间。 ❞ 我们可以将它们看作是网格的列或行。 在这个例子中,这是第二行网格线和第三行网格线之间的轨道。 网格区域 ❝网格区域是由四条网格线围成的总空间。...❞ 一个网格区域可能由「任意数量的网格单元组成」。 在这个例子中,这是位于行网格线 1 和 3 之间,以及列网格线 1 和 3 之间的网格区域。...fr vs % fr单位为Grid带来了类似Flexbox样式的灵活性。百分比和 值会创建硬约束,而fr列可以「根据需要自由地增长和收缩,以容纳其内容」。...此时我们用gap来设置所有列和行之间添加了固定量的空间 看看在%和fr之间切换时会发生什么: 当使用基于%的列时,内容会溢出到网格父容器之外。这是因为%是使用总网格区域来计算的。...显式行 不过,在其他情况下,我们希望「显式定义行,以创建特定的布局」。
CSS网格布局擅长于将一个页面划分为几个主要区域,以及定义这些区域的大小、位置、层次等关系(前提是HTML生成了这些区域)。 它像表格一样,网格布局让我们能够按行或列来对齐元素。...网格线(Grid Lines) 使用Grid布局在显式网格中定义轨道的同时会创建网格线。 网格线可以用它们的编号来寻址。在从左到右的语言中,列线1将位于网格的左侧,行线1将位于其顶部。...网格区域(Grid Areas) 网格区域是网格中由一个或者多个网格单元格组成的一个矩形区域。本质上,网格区域一定是矩形的。例如,不可能创建T形或L形的网格区域。...容器上的属性 网格模板 创建了网格容器,我们就可以定义这个网格有多少行有多少列,并且每一行每一列的大小。...的位置,如果我们将它的位置设置的超出我们定义的网格,那时也会隐式创建行或列。
然后,作者可以将其应用程序的构造块元素精确定位和设置到由这些列和行的交叉点定义的网格区域grid area中。以下示例说明了网格布局的自适应功能,以及它如何更清晰地分离内容和样式。...网格是由水平和垂直网格比交织组成,他将网格容器的空间分为网格区域,网格项目将放置在这些网格区域中。在网格中有两套网格线:一套是沿着水平方向的轴定义列的网格张,另一套是沿着垂直方向的轴定义行。 ?...一个网格项目引用网格线来确定其网格中的位置属性。 下面两个例子创建了三个列网格线和四行网格线。第一个示例演示了设计师如何将一个使用网格行号的位置来确定网格项目的位置,第二个例子显式的设置了网格线。...每个网格轨道可以设置一个大小,用来控制宽度或高度或者行可能会增长。 网格单元是网格行和网格列的交集。它是定位网格项时可以引用的网格的最小单元。 在接下来的例中定义了一个三行两列的网格。...基本示例 以下示例显示了一个三列轨道网格,其中创建的行最小为100像素,最大为自动。条目使用线性定位放置在网格上。
组成网格线的分界线,他们可以是列网格线,也可以是行网格线 网格轨道。两个相邻的网格线之间为网格轨道,可以认为是网格的行列或者行。 网格单元。...两个相邻的列网格线和两个相邻的网格线组成的网格单元,它是最小的网格单元。 网格区。网格区是由任意数量网格单元组成。 ...当设置行或者列大小为auto 时,网格会自动分配空间和网格名称。 ...,总网格区域大小有可能小于网格容 器,这时候你可以设置网格的对齐方式(垂直于列网格线对齐)。 .... ; 和 grid-auto-rows: ... ; 自动生成隐式网格轨道(列和行),当你定位网格项超出网格容器 范围时,将自动创建隐式网格轨道.
1.1.1 使用 fr 单位 除了长度和百分比,我们也可以用fr这个单位来灵活地定义网格的行与列的大小。...150px的列,剩余的 50px 不足以再创建一列,所以第四个元素就被放置到了第二行。...grid-template-areas属性的使用规则如下: 需要填满网格的每个格子 对于某个横跨多个格子的元素,重复写上那个元素grid-area属性定义的区域名字 所有名字只能出现在一个连续的区域,不能在不同的位置出现...假设现在我们定义一个 1 行x 2 列的宽高都为 100px 的网格容器,并在其中放置了 a 和 b 两个网格项: 如果我们把网格项 a 和 b 放置到已定义的网格之外的话: .a { grid-column...: 3; } .b { grid-row: 2; } 可以看到比之前定义的网格多了一些,而这些多出来的的网格就是隐式网格。
CSS Grid(网格) 布局使我们能够比以往任何时候都可以更灵活构建和控制自定义网格。Grid(网格) 布局使我们能够将网页分成具有简单属性的行和列。...grid-template-columns 属性允许我们指定网格中的列数及列的宽度。您可以指定任何单位的尺寸大小,包括像素,百分比和其他单位fr,我们将在下一步学习。...fr 单位(等分) fr 是为网格布局定义的一个新单位。它可以帮助你摆脱计算百分比,并将可用空间等分。...结论 CSS网格布局允许我们更快地布局,并且更容易控制。在本教程中,我们学习了如何用CSS网格来定义布局, fr单位,repeat 函数和一些网格系统中特定的术语。...我们还学习了如何使用网格线和网格命名区域在网格容器内定位网格项目。但这只是一个开始。在下一个教程中,我们将深入到CSS网格。
基础和浏览器兼容性 开始你要用 display:grid 定义一个网格容器,用 grid-template-columes 和 grid-template-rows 设置列和行的尺寸,然后将子元素放在表格的列和行中...下面的网格轨道就是第二条和第三条行线之间的空间。 网格单元 两个相邻行和两个相邻列网格线之间的空间。它是网格的单个“单元”。这是行网格线1和2以及列网格线2和3之间的网格单元。...网格区 四个网格线包围的总空间。网格区域可以包括任意数量的网格单元。这是行网格线1和3以及列网格线1和3之间的网格区域。...grid-template-rows 使用以空格分隔的值列表定义网格的列和行。...如果网格区域的名称为 foo,则区域的起始行和起始列行的名称将为 foo-start,其最后一行和最后一行的名称将为 foo-end。
使用步骤如下: 1) 创建网格包布局的一个实例,并将其定义为当前容器的布局管理器. 2) 创建GridBagContraints的一个实例 ...5.7、TableLayout 这种管理器把容器划分为行和列,就像是电子表格中的单元格。Tablelayouot把行和列交叉的每一个格子称为基本的单元格(cell)。...TableLayout行列的分配 一般来说,创建tablelayout要先设定行和列。定义一个double类型的二维数组size[][]。...行和列的分配 此container被分为三行五列。size[0]为列比列分配,width=200是指component的宽度,可以是任意值。...参数 p 为TableLayout.PREFERRED:指定行或者列可以根据component自身的大小给予合适的行或列比列,以能全部显示此component。
CSS网格布局是一种二维布局系统,它允许我们创建复杂的网页布局,既可以处理行也可以处理列。与传统的布局方法不同,网格布局将网页分成多个可控的区域,这些区域可以任意排列、对齐和调整大小。...网格布局使得创建灵活且响应式的设计变得更加简单和高效。 一个网格通常具有许多的列(column)与行(row),以及行与行、列与列之间的间隙,这个间隙一般被称为沟槽(gutter)。...网格单元(Grid Cell): 行和列交汇处的单元格。 网格区域(Grid Area): 由多个网格单元组成的区域,可以跨越多个行和列。...然后,我们可以定义网格的行和列,来确定网格项的排列方式。 示例代码: <!...五、练习 题 1 题目: 创建一个网格布局,其中包含一个导航栏、一个主内容区域和一个侧边栏。导航栏应该占据整个第一行,侧边栏应该在第二行的第一列,主内容区域应该在第二行的第二列和第三列。
接下来,我们为每个html元素分配了一个网格区域名称。在container 类中,我们可以使用grid-template-areas`属性定 义html 模板的外观,注意网格模板区域是如何排列的。...但是,最终按我们网络区域的顺序来展示。 image.png 下一步是使我们的页面具有响应性。我们希望在更大的屏幕上使用不同的布局。CSS网格使得处理媒体查询和创建响应式布局变得非常容易。...image.png 网格列和行 如何使用 CSS 网格来组织列和?...第四列在网格的第五行结束。 grid-column-start和grid-column-end值是指网格线。...有效地使用 grid-templates 现在来看看grid-templates,在本节中,我们将讨论如何为不同的屏幕大小创建不同的布局。
通过一组值来定义网格的行和列,值得大小代表轨道的大小 :可以是一个长度值(px em等)、百分比或者是网格中自由空间的一部分(fr为单位,类似于Flexbox里面的 flex-basis...7. align-items 与 justify-items相对应的,网格项目在所在的行轨道上的对齐方式,属性值同样和列对齐是一样的: start:项目与行轨道顶端对齐 end:项目与行轨道底端对齐 center...:项目与行轨道居中对齐 stretch:项目高度占据整个单元格区域(默认值,前提是项目没有设置高度,从上面的例子可以看出) 8. justify-content 定义网格列宽的时候,当你使用px之类的非响应式长度单位...当显示定位行与列(使用 grid-template-columns/grid-template-rows属性)时候,如果网格项目超出了网格的定义范围,那么就会创建隐式网格。...-row:自动布局会将没有定义位置的网格项填充每一行,必要时添加新行(默认) column:自动布局会将没有定义位置的网格项填充每一列,必要时添加新列 row dense/column dense:如果按照
grid-row-start 属性 :指定网格项在网格`行`中的起始位置 grid-row-end 属性 :指定网格项在网格`行`中的起始位置 grid-template-areas 属性 :定义放置元素的区域...grid-row-start 属性 :指定网格项在网格行中的起始位置 grid-row-end 属性 :指定网格项在网格行中的起始位置 grid-template-areas 属性 :定义放置元素的区域...grid-template-columns - 定义列网格尺寸大小 描述: 该属性是基于网格列的维度,去定义网格线的名称和网格轨道的尺寸大小。...描述: 该属性是基于网格行的维度,去定义网格线的名称和网格轨道的尺寸大小。...,定义网格的列比重 */ display: grid; grid-template-columns: 1fr 3fr 1fr; /* 使用区域模板进行定义,空白区域使用 .
(二)网格轨道和网格线网格轨道是指网格中行和列之间的空白区域。通过定义行和列,可以创建一个网格结构。网格线则是分割网格轨道的虚拟线条,用于确定网格项目的位置和大小。...grid-template-columns和grid-template-rows这两个属性用于定义网格的列和行的数量、大小和分布。...可以使用长度值(如像素、百分比等)、fr单位(用于创建可伸缩的列和行)以及其他单位来指定。grid-gap(或column-gap和row-gap)用于指定网格轨道之间的间距。...grid-template-areas通过为网格项目定义名称并将其组合成区域,可以使用grid-template-areas属性来创建复杂的网格布局。...可以指定起始行、列和结束行、列,或者使用span关键字来指定跨越的行数或列数。
接下来,我们为每个html元素分配了一个网格区域名称。在container 类中,我们可以使用grid-template-areas`属性定 义html 模板的外观,注意网格模板区域是如何排列的。...但是,最终按我们网络区域的顺序来展示。 下一步是使我们的页面具有响应性。我们希望在更大的屏幕上使用不同的布局。CSS网格使得处理媒体查询和创建响应式布局变得非常容易。...网格列和行 如何使用 CSS 网格来组织列和?...第四列在网格的第五行结束。 grid-column-start和grid-column-end值是指网格线。...有效地使用 grid-templates 现在来看看grid-templates,在本节中,我们将讨论如何为不同的屏幕大小创建不同的布局。
本例中,第1列和第5列的宽度是30px。函数repeat()创建了中间3列,每一列宽度都是1fr。...项目1利用网格线编号定位在第2行第2列的位置上。 本例中,项目只跨越一行一列,则grid-row-end和grid-column-end的定义可以省略。...第2行轨道有隐式网格自动创建并为项目 3 和 4 分配了空间。 属性grid-auto-rows 定义了隐式网格的行轨道尺寸,即项目3和4的高度是 140px 。...隐式网格中自动创建其它列并给项目3,4,5分配空间;分配的空间尺寸是通过属性 grid-auto-columns定义的。...[隐式网格演示4] 演示程序 13 隐式命名的网格区域 网格线名称可以任意指定,但分配以 -start 和 -end 结尾的名字有额外的益处,这样隐式地创建了具名网格区域,该名称可以用于项目定位。
四、CSS 网格单位 在 CSS 网格中,可以使用绝对定位和相对定位单位如px和em来确定行或列的大小。...fr:设置列或行占剩余空间的一个比例, auto:设置列宽或行高自动等于它的内容的宽度或高度, %:将列或行调整为它的容器宽度或高度的百分比, .d1{background:LightSkyBlue...九、grid-column属性 grid-column属性是第一个用于网格项本身的属性。使用用grid-column属性定义网格项开始和结束的位置,进而控制每个网格项占用的列数。...十七、 使用grid-area创建区域模板 除了使用grid-area放置在模板中命名区域的位置的方式,如果网格中没有定义区域模板,你也通过grid-area创建区域模板,写法如下: grid-area...十八、使用 repeat 函数减少重复 当使用grid-template-columns和grid-template-rows定义网格结构时,你需要为添加的每一行和每一列都输入一个值。
.container { display: grid; } grid-template-columns 和 grid-template-rows 定义网格的列和行轨道(track)大小。...可接受长度、百分比、fr(fraction单位,表示网格空间的分数)或auto值。还可以使用repeat()函数创建重复轨道,以及使用minmax()函数定义轨道的最小和最大尺寸。...定义网格布局的区域(area),通过命名项目并用字符串描述网格结构。....container { grid-gap: 10px 20px; /* 行间距10px,列间距20px */ } grid-auto-columns 和 grid-auto-rows 定义自动填充网格时新添加行或列的轨道大小...100px,最大高度自适应内容 */ } grid-auto-flow 控制网格项目如何自动填充和排列。
领取专属 10元无门槛券
手把手带您无忧上云