Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 不指定宽度的浮动块元素_Html_Css - Fatal编程技术网

Html 不指定宽度的浮动块元素

Html 不指定宽度的浮动块元素,html,css,Html,Css,我正在读《头优先HTML和CSS》一书,书中写道,任何浮动元素都必须有一个宽度。我尝试在没有指定宽度的情况下将div元素向右浮动,而float属性按预期工作(它将div移动到最右边)。这是否意味着书中有错误,或是我遗漏了什么 是的,您可以在级联中声明没有width值的浮动元素。然后,通过一个过程,指定的值将是 对于,初始值为auto CSS解释了当具有宽度:auto时应该发生什么: 如果计算为auto,则使用的值为 “收缩到适合”宽度 收缩至配合宽度的计算类似于计算 使用自动表格布局算法的表格单

我正在读《头优先HTML和CSS》一书,书中写道,任何浮动元素都必须有一个宽度。我尝试在没有指定宽度的情况下将div元素向右浮动,而float属性按预期工作(它将div移动到最右边)。这是否意味着书中有错误,或是我遗漏了什么

是的,您可以在级联中声明没有
width
值的浮动元素。然后,通过一个过程,指定的值将是

对于,初始值为
auto

CSS解释了当具有
宽度:auto
时应该发生什么:

如果计算为
auto
,则使用的值为 “收缩到适合”宽度

收缩至配合宽度的计算类似于计算 使用自动表格布局算法的表格单元格宽度。 粗略:通过格式化内容计算首选宽度 不打断除显式换行以外的其他换行, 并计算首选的最小宽度,例如,通过尝试所有 可能的换行。CSS 2.1没有定义精确的算法。 第三,找到可用宽度:在这种情况下,这是 包含块减去使用的
左边距值
左边框宽度
左填充
右填充
右边框宽度
右边框宽度
,以及任何相关 滚动条

然后收缩到适合的宽度为:

min(max(preferred minimum width, available width), preferred width)

现在称为“收缩到适合”算法。

float:right
是元素的简单堆叠,从左到右直到填充线宽,然后从上到下。就像写英文报纸一样


float:left
用于边栏之类的东西,它将占据整个页面,除非其宽度受到限制。这就是为什么必须指定
宽度的原因。

可能……但在不了解完整上下文的情况下,我们无法真正进行注释。模糊地提到“书中的某样东西”并没有多大帮助,“它会占据整页”似乎意味着。但使用的是。