width和min-width的区别和差异性比较

article/2025/10/7 6:47:17

1、正常情况下

    width :给块级元素/行内块 元素设置固定的宽度,或者固定百分比的宽度。

    min-width:  当盒子内部元素宽度小于 min-width的值时,盒子宽度为 min-width的值,当盒子内容宽度大于 min-width的值时,盒子随着内容的增加而被撑大,没有上上限,但是 盒子宽度的最小值是 设置的 min-width 的值。

2、在父元素已经设置为 display: flex; 弹性布局时

width:  

    a、当父元素的width 大于 子元素的width的前提下: 给子元素设置多大的width,该子元素的宽度变就是多大。

    示例代码: 

    

< style >
.con1{
display: flex;
border: 1px solid pink;
width: 600px;
margin: 30px auto;
}
        .con1 span:nth-child( 1 ){
width: 550px;
background: red;
}
.con1 span:nth-child( 2 ){
width: 550px;
background: pink;
}
.con1 span:nth-child( 3 ){
width: 550px;
background: green;
}
.con1 span:nth-child( 4 ){
width: 550px;
background: orange;
}
< / style >
    < div class= "con1" >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
</ div >

    运行效果: 

    

    b、当父元素的宽度小于 子元素的width 时: 给子元素设置的宽度将会按照 该子元素在所有子元素宽度和所占的百分比,这个百分比,就是 子元素 占父元素宽度的百分比,计算公式:

                子元素 宽度 = (该子元素宽度 / 所有子元素宽度和) * 父元素宽度

示例代码

< style >
.con1{
display: flex;
border: 1px solid pink;
width: 600px;
margin: 30px auto;
}
.con1 span:nth-child( 1 ){
width: 550px;
background: red;
}
.con1 span:nth-child( 2 ){
width: 550px;
background: pink;
}
.con1 span:nth-child( 3 ){
width: 550px;
background: green;
}
.con1 span:nth-child( 4 ){
width: 550px;
background: orange;
}
< / style >


< div class= "con1" >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
</ div >

运行效果:



min-width: 

    a、当子元素宽度和小于父元素:...该元素的内容小于 min-width的数值时,该元素的宽度为 min-width设置的值。

                                                     ...  该元素的内容大于 min-width的数值时,该元素的宽度被撑大,值为其内容的宽度。

    

示例代码:

< style >
.con1{
display: flex;
border: 1px solid pink;
width: 600px;
margin: 30px auto;
}
.con1 span:nth-child( 1 ){
min-width: 50px;
background: red;
}
.con1 span:nth-child( 2 ){
min-width: 50px;
background: pink;
}
.con1 span:nth-child( 3 ){
min-width: 50px;
background: green;
}
.con1 span:nth-child( 4 ){
min-width: 50px;
background: orange;
}
< / style >
    < div class= "con1" >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
</ div >


运行效果:(虽然给span设置的时min-width: 50;但是被内部的文字撑大,所以span width是 80)


    b、当子元素的宽度大于父元素的宽度: 子元素的宽度最小值为设置的值,随着内部内容宽度的增加而增大。父元素会出现滚动条。

示例代码

< style >
.con1{
display: flex;
border: 1px solid pink;
width: 600px;
margin: 30px auto;
overflow: scroll;
}
.con1 span:nth-child( 1 ){
min-width: 550px;
background: red;
}
.con1 span:nth-child( 2 ){
min-width: 550px;
background: pink;
}
.con1 span:nth-child( 3 ){
min-width: 550px;
background: green;
}
.con1 span:nth-child( 4 ){
min-width: 550px;
background: orange;
}
< / style >
< div class= "con1" >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
< span >我是一个兵 </ span >
</ div >

运行效果:(可以看到每个span宽度都为  550)




总结:

一般情况下,width设置盒子宽度的固定值。 min-width设置盒子宽度的最小值。

在父元素设置为flex弹性布局的情况下:

    a、 子元素宽度和小于父元素时,同上,width设置盒子宽度的固定值。 min-width设置盒子宽度的最小值。

    b、子元素宽度和大于父元素时,width设置的盒子宽度会被压缩,具体宽度计算公式:  

                子元素 宽度 = (该子元素宽度 / 所有子元素宽度和) * 父元素宽度

    而此时min-width设置的盒子宽度不会被压缩,盒子的最小宽度为 设置的min-width的值。



http://chatgpt.dhexx.cn/article/vwx0GbHw.shtml

相关文章

【NOIP2013提高组】华容道

题目背景 NOIP2013 提高组 Day2 试题。 题目描述 小 B 最近迷上了华容道&#xff0c;可是他总是要花很长的时间才能完成一次。于是&#xff0c;他想到用编程来完成华容道&#xff1a;给定一种局面&#xff0c;华容道是否根本就无法完成&#xff0c;如果能完成&#xff0c;最…

【NOIP2013提高组】花匠

题目背景 NOIP2013 提高组 Day2 试题。 题目描述 花匠栋栋种了一排花&#xff0c;每株花都有自己的高度。花儿越长越大&#xff0c;也越来越挤。栋栋决定把这排中的一部分花移走&#xff0c;将剩下的留在原地&#xff0c;使得剩下的花能有空间长大&#xff0c;同时&#xff…

【NOIP2013提高组】积木大赛

题目背景 NOIP2013 提高组 Day2 试题 题目描述 春春幼儿园举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为 n 的大厦&#xff0c;大厦可以看成由 n 块宽度为 1 的积木组成&#xff0c;第 i 块积木的最终高度需要是 hi。 在搭建开始之前&#xff0c;没有任何…

7.15 NOIP 2013

NOIP 2013 DAY 1 DAY1 T1 转圈游戏 快速幂模板 #include<bits/stdc.h> using namespace std; int n,m,k,x; long long ans; long long cmd(long long a,long long b){long long sum1;for(;a;a>>1){if(a&1){sumsum*b%n;}bb*b%n; } return sum; } int main(…

noip2013 day2

一道纯模拟就可以过&#xff08;水水水&#xff09;。 考试时本蒟蒻甚至写了个线段树&#xff0c;然后发现其实不如直接模拟。 模拟思路&#xff1a; 从1到n枚举每个最长的不为0的序列&#xff0c;每次每个数减去其中剩余的最小值&#xff0c;答案加上这个最小值&#xff0c…

noip2013

D1&#xff1a; T1&#xff1a;快速幂 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #include<cstdlib> #include<cmath> #define LL long long using namespace std; LL n,m,k,x; inline LL quickpow(LL…

解题报告:NOIP2013 车站分级(拓扑序递推求解差分约束、建图优化O(n+m)) 超详细讲解

本题是2013年NOIP普及组的压轴题 差分约束裸题。 计算当前线路中最小的级别&#xff08;比较始发站和终点站&#xff09;。 整条线路中所有大于这个级别的都必须停靠 所有未停靠的站点的级别一定小于这个级别 也就是说所有未停靠的即为级别低&#xff0c;记为A 所有停靠的站点…

[NOIP2013]记数问题

[NOIP2013]记数问题 1.题目2.分析3.代码方法1&#xff1a;将每个数字的每一位单独算出方法2&#xff1a;转换为字符串再进行遍历 4.反思总结5.更新日志 1.题目 题目链接 题号&#xff1a;NC16538 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C…

ARMv8体系结构基础04:算术和移位指令

目录 1 数据处理指令概述 2 加法指令详解 2.1 ADD指令 2.1.1 ADD&#xff08;extended register&#xff09;指令编码分析 2.1.2 ADD&#xff08;extended register&#xff09;指令编码验证 2.1.3 ADD&#xff08;immediate&#xff09;指令编码分析 2.1.4 ADD&#xf…

8086CPU指令系统--汇编语言逻辑运算和移位操作指令

文章目录 一、逻辑运算指令1、逻辑‘与’指令 AND2、逻辑‘或’指令 OR3、逻辑“非”指令 NOT4、逻辑“异或” XOR5、测试指令TEST 二、移位指令1&#xff09;非循环移位1、算数左移SAL和逻辑左移SHL2、逻辑右移SHR3、算术右移SAR 2&#xff09;循环移位1、带CF的循环左移 RCL2…

arm64汇编学习-(3)算术与移位指令

arm64汇编学习-&#xff08;3&#xff09;算术与移位指令 1 数据处理指令1.1 check the C condition of adds, adc,cmp1.1.1 测试示例程序1.1.2 执行之前1.1.3 执行之后1.1.3.1 ldr和mov指令之后1.1.3.2 ads和adc指令之后1.1.3.3 cmp和adc指令之后 1.2 cmp和sbc指令的综合运用1…

汇编语言——逻辑运算和移位指令

逻辑运算和移位指令 逻辑运算指令 逻辑与AND 格式 AND reg, imm/reg/mem ;reg←reg^imm/reg/mem AND mem, imm/reg ; mem←-mem ^ imm/reg功能:对两个操作数执行按位的逻辑与运算&#xff0c;结果送到目的操作数说明: (1)按位的逻辑与运算; (2)操作数不能同时为存储器操作数…

汇编语言基础之 移位指令

原文: http://bdxnote.blog.163.com/blog/static/ 移位指令是一组经常使用的指令,包括:算数移位、逻辑移位、双精度移位、循环移位、带进位的循环移位; 移位指令都有一个指定需要移动的二进制位数的操作数,该操作数可以是立即数,也可以是CL的值;在8086中,该操作数只能是1,但是在…

x86汇编_移位和循环移位指令简介_笔记46

移位指令与前面介绍的按位操作指令一起形成了汇编语言最显著的特点之一。位移动 (bit shifting) 意味着在操作数内向左或向右移动。x86 处理器在这方面提供了相当丰富的指令集如下表所示&#xff0c;这些指令都会影响溢出标志位和进位标志位。 英文全称汇编指令中文翻译说明意…

PLC移位循环指令

PLC移位循环指令 一、移位指令 移位指令包括无符号数移位和有符号数移位。 其中无符号数移位包含字左移指令、字右移指令、 双字左移指令和双字右移指令&#xff1b;有符号数移位包含整数右移指令和双整数右移指令。 1、无符号数移位指令 &#xff08;1&#xff09;字左移指…

ARM64体系结构编程3-算数和移位指令

条件操作码 条件标志位描述N负数标志&#xff08;上一次运算结果为负值&#xff09;Z零结果标志&#xff08;上一次运算结果为零&#xff09;C进位标志&#xff08;上一次运算结果发生了无符号溢出&#xff09;V溢出标志&#xff08;上一次运算结果发生了有符号溢出&#xff0…

逻辑、移位操作与空指令的实现

逻辑、移位操作和空指令的实现 1. 流水线数据相关的问题 流水线上经常会有一些被称为“相关”的情况发生&#xff0c;它使得指令序列中下一条指令无法按照设计的时钟周期执行&#xff0c;这些“相关”会降低流水线的性能。 1.1 流水线相关 流水线中的相关可分为&#xff1a…

汇编移位指令SHR,SAR,SAL/SHL,ROR,ROL,RCR,RCL

目录 逻辑右移SHR 算数右移SAR&#xff08;重点&#xff09; 算数/逻辑左移SAL/SHL(完成的操作都一样) 循环右移ROR 循环左移ROL 带进位循环右移RCR 带进位循环左移RCL 总结 例题 一 二 移位指令为双操作数指令&#xff0c;用于将目的的操作数中的二进制数移位。 目…

位移指令实现乘法、除法计算

前言 大家都知道51单片机是有乘法、除法指令的&#xff0c;不管是用C语言还是汇编语言&#xff0c;都是可以直接计算乘法、除法的&#xff0c;我以为&#xff0c;-&#xff0c;*&#xff0c;/ 这些算术运算是单片机的标配&#xff0c;而我公司使用的应广单片机居然没有乘法、除…

微机原理——移位指令

例题 思路 选择移位语句&#xff0c;右移&#xff0c;将AL移出的送入DX左端&#xff0c;将BL移出的送入DX左端。循环八次 MOV AL,01100101B; MOV BL,11011010B; XOR DX,DX;两个值相同&#xff0c;异或结果为0。等效&#xff1a;MOV DX,0 MOV CX,8;count L1: SHR AL,1;逻辑右…