Html 如何缩放倍数<;部门>;动态使用最小和最大宽度?

Html 如何缩放倍数<;部门>;动态使用最小和最大宽度?,html,css,Html,Css,我有一堆特定高度的沙发。我希望宽度从2rem缩放到2.75 rem,具体取决于可用空间。这可能是个棘手的问题,但我就是不知道怎么做——我已经尝试过使用,但div没有调整大小。理想的行为是: 当有足够的空间时,每个div元素都使用最大宽度 当没有足够的空间容纳所有具有最小空间的div时,应将其包裹起来 在这两种情况之间,它们的大小应该相等 HTML: jsfiddle:您只需使用Flexbox就可以做到这一点。只需使用以下两个更新的类将其添加到CSS中 CSS .pagination-numb

我有一堆特定高度的沙发。我希望宽度从2rem缩放到2.75 rem,具体取决于可用空间。这可能是个棘手的问题,但我就是不知道怎么做——我已经尝试过使用,但div没有调整大小。理想的行为是:

  • 当有足够的空间时,每个div元素都使用最大宽度
  • 当没有足够的空间容纳所有具有最小空间的div时,应将其包裹起来
  • 在这两种情况之间,它们的大小应该相等
HTML:


jsfiddle:

您只需使用Flexbox就可以做到这一点。只需使用以下两个更新的类将其添加到CSS中

CSS

.pagination-number--demo-multiple-numbers {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
}

.pagination-number {
    font-size: 0.875rem;
    border: 0.0625rem solid #ffffff;
    border-radius: 4px;
    text-align: center;
    flex: 1;
    margin: 10px;
}
.pagination number--演示多个数字{
宽度:100%;
保证金:0自动;
显示器:flex;
柔性流动:包裹;
证明内容:中心;
}
.页码{
字体大小:0.875rem;
边框:0.0625rem实心#ffffff;
边界半径:4px;
文本对齐:居中;
弹性:1;
利润率:10px;
}
.分页编号--较小{
高度:2.25雷姆;
线高:2.125雷姆;
}
.页码--从窄到宽{
最小宽度:2rem;
最大宽度:2.75雷姆;
宽度:100%;
}
.分页编号--活动{
字号:700;
背景色:#eeeeee;
}

42
42
42
42
42
42
42
42
42
42

您只需使用Flexbox即可完成此操作。只需使用以下两个更新的类将其添加到CSS中

CSS

.pagination-number--demo-multiple-numbers {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
}

.pagination-number {
    font-size: 0.875rem;
    border: 0.0625rem solid #ffffff;
    border-radius: 4px;
    text-align: center;
    flex: 1;
    margin: 10px;
}
.pagination number--演示多个数字{
宽度:100%;
保证金:0自动;
显示器:flex;
柔性流动:包裹;
证明内容:中心;
}
.页码{
字体大小:0.875rem;
边框:0.0625rem实心#ffffff;
边界半径:4px;
文本对齐:居中;
弹性:1;
利润率:10px;
}
.分页编号--较小{
高度:2.25雷姆;
线高:2.125雷姆;
}
.页码--从窄到宽{
最小宽度:2rem;
最大宽度:2.75雷姆;
宽度:100%;
}
.分页编号--活动{
字号:700;
背景色:#eeeeee;
}

42
42
42
42
42
42
42
42
42
42

尝试使用视口测量单位测量div框的宽度和边框。此外,不能同时使用“宽度”和“最大宽度”,因为元素将始终符合“最大宽度”值。使用下面的css更新类,我想你会得到你想要的

.pagination-number {
  font-size: 0.875rem;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 0.05vw solid #ffffff;
  border-radius: 4px;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}

.pagination-number--narrow-to-wide {
   min-width: 2rem;
   /* For width: (Full viewport width - Total box border(0.5 *  10) / Total number of div boxes (10) = > 100vw-5vw => 95vw / 10 */
   width: calc(95vw /10); 
   margin: 0 auto;
}
.pagination number--演示多个数字{
宽度:100%;
保证金:0自动;
}
.页码{
字体大小:0.875rem;
框大小:边框框;
-moz框大小:边框框;
-webkit框大小:边框框;
边框:0.05vw实心#ffffff;
边界半径:4px;
显示:内联块;
文本对齐:居中;
垂直对齐:中间对齐;
}
.分页编号--较小{
高度:2.25雷姆;
线高:2.125雷姆;
}
.页码--从窄到宽{
最小宽度:2rem;
宽度:计算(95vw/10);/*(全视口宽度-总框边框(0.5*10)/分区框总数(10)=>100vw-5vw=>95vw/10*/
保证金:0自动;
}
.分页编号--活动{
字号:700;
背景色:#eeeeee;
}

42
42
42
42
42
42
42
42
42
42

尝试对div框的宽度和边框使用视口测量单位。此外,您不能同时使用宽度和最大宽度,因为元素将始终符合最大宽度值。使用以下css更新的类,我认为您将得到您想要的

.pagination-number {
  font-size: 0.875rem;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 0.05vw solid #ffffff;
  border-radius: 4px;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}

.pagination-number--narrow-to-wide {
   min-width: 2rem;
   /* For width: (Full viewport width - Total box border(0.5 *  10) / Total number of div boxes (10) = > 100vw-5vw => 95vw / 10 */
   width: calc(95vw /10); 
   margin: 0 auto;
}
.pagination number--演示多个数字{
宽度:100%;
保证金:0自动;
}
.页码{
字体大小:0.875rem;
框大小:边框框;
-moz框大小:边框框;
-webkit框大小:边框框;
边框:0.05vw实心#ffffff;
边界半径:4px;
显示:内联块;
文本对齐:居中;
垂直对齐:中间对齐;
}
.分页编号--较小{
高度:2.25雷姆;
线高:2.125雷姆;
}
.页码--从窄到宽{
最小宽度:2rem;
宽度:计算(95vw/10);/*(全视口宽度-总框边框(0.5*10)/分区框总数(10)=>100vw-5vw=>95vw/10*/
保证金:0自动;
}
.分页编号--活动{
字号:700;
背景色:#eeeeee;
}

42
42
42
42
42
42
42
42
42
42