Html 具有固定宽度和内联元素的Div

Html 具有固定宽度和内联元素的Div,html,css,Html,Css,我写了一些简单的html文档。我有两个元素在里面:固定宽度的div和后面的image。据我所知,image是内联元素,所以它应该位于div的旁边,在右边,因为div有固定的宽度,并且有足够的空间放置image。相反,图像位于div元素下面。看起来,div元素占据了100%的宽度,不管它是什么大小。为什么会发生这种情况? 代码: 一些文本 Div是一个块元素。因此,默认情况下,其他元素不会放置在它旁边 您可以在CSS中添加以下行以实现预期的行为: img{float:right;}Div是一个块

我写了一些简单的html文档。我有两个元素在里面:固定宽度的div和后面的image。据我所知,image是内联元素,所以它应该位于div的旁边,在右边,因为div有固定的宽度,并且有足够的空间放置image。相反,图像位于div元素下面。看起来,div元素占据了100%的宽度,不管它是什么大小。为什么会发生这种情况? 代码:


一些文本


Div是一个块元素。因此,默认情况下,其他元素不会放置在它旁边 您可以在CSS中添加以下行以实现预期的行为:


img{float:right;}

Div是一个块元素。因此,默认情况下,其他元素不会放置在它旁边 您可以在CSS中添加以下行以实现预期的行为:


img{float:right;}

块元素旁边不允许HTML元素,除非顺序不同(例如,通过向另一个元素添加float声明)

这就是图像转到下一行的原因。尝试使用相同的跨距,图像将不会转到下一行。原因很简单,span是一个内联元素,如果该元素是内联元素,那么它旁边可以包含另一个HTML元素


希望这有帮助

块元素旁边不允许任何HTML元素,除非顺序不同(例如,通过向另一个元素添加浮点声明)

这就是图像转到下一行的原因。尝试使用相同的跨距,图像将不会转到下一行。原因很简单,span是一个内联元素,如果该元素是内联元素,那么它旁边可以包含另一个HTML元素


希望这有帮助

Div是未替换的元素,默认情况下是块级元素

政府始终满足这一平等:

'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block '左边距'+'边框左侧宽度'+'填充左侧'+ “宽度”+ '右填充'+'右边框宽度'+'右边框' =包含块的宽度
因此,当您将“宽度”减少到500px时,一个或多个其他属性(一个或两个边距)将自动调整,以便保持相等。也就是说,包含块的整个宽度始终被完全使用,并且内联元素没有可用空间。

Div是未替换的元素,默认情况下是块级元素

政府始终满足这一平等:

'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block '左边距'+'边框左侧宽度'+'填充左侧'+ “宽度”+ '右填充'+'右边框宽度'+'右边框' =包含块的宽度
因此,当您将“宽度”减少到500px时,一个或多个其他属性(一个或两个边距)将自动调整,以便保持相等。也就是说,包含块的整个宽度始终被充分利用,并且内联元素没有可用空间。

这是因为即使将固定宽度设置为
div
,默认的
显示
CSS属性值始终是
,它占据了整个宽度。之所以会出现这种情况,是因为
标记在HTML中定义了一个水平分割或部分

例如:
在下面给出的代码中,没有定义显示属性,因此默认值为
,这就是图像位于div下方的原因。

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,当时一位不知名的印刷商拿起一个打印工具,将其拼凑成一本打印样本书。它不仅存活了五个世纪,而且还跨越到电子排版,基本上保持不变。它在20世纪60年代随着包含Lorem Ipsum段落的Letraset表单的发布而流行,最近随着Aldus PageMaker等桌面出版软件的发布,包括Lorem Ipsum版本


这是因为即使您将固定宽度设置为
div
,默认的
显示
CSS属性值始终是
,它占据了整个宽度。之所以会出现这种情况,是因为
标记在HTML中定义了一个水平分割或部分

例如:
在下面给出的代码中,没有定义显示属性,因此默认值为
,这就是图像位于div下方的原因。

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,当时一位不知名的印刷商拿起一个打印工具,将其拼凑成一本打印样本书。它不仅存活了五个世纪,而且还跨越到电子排版,基本上保持不变。它在20世纪60年代随着包含Lorem Ipsum段落的Letraset表单的发布而流行,最近随着Aldus PageMaker等桌面出版软件的发布,包括Lorem Ipsum版本

因此,您想知道divs选择下一行而不是自动设置内联行的原因。

CSS中的某些元素是块级元素,这意味着它们会自动开始一行。例如,如果您创建两个单字段落元素,它们将不会相互流入,而是显示在单独的行上。其他元素是内联元素。这意味着它们与前面的内容“一致”。一个例子是锚定标记,它可以出现在另一个元素(如段落)中,而不会导致出现任何额外的空白或新行

欺骗这种布局模型的一种方法是使用浮动
  <img src="http://domain/200/200/" />
  <p>Hello World...</p>
 img {
      float: right;
      margin: 20px;
      }
   p {
       border: solid 1px black;
     }
   img {
     float: right;
     margin: 20px;
     }

  p {
     float: left;
     width: 220px;
     margin: 20px;
     }
min-width: 100%;                  
width: max-content;