对齐图中的元素

Align elements in a figure

我的硬件有问题。我无法在左侧对齐 2 个元素 https://jsfiddle.net/tkjxLfjy/ 这是代码,我尝试了 float:left 之类的方法但没有用...所以你能帮我把仪表和文字放在下面吗图片(黑色方块)?

根据w3school

Elements after a floating element will flow around it. To avoid this, use the clear property.

Clear:both 添加到 divimagefloat:left 所以下一个元素位于它后面。

Jsfiddle

figure div
{
    clear: both;
}

您可以删除 float:left 并向图像添加 display: block

基本上display: block 保留元素的整行,这样就不会在它旁边设置其他元素,除非它定位.

这是一个fiddle

你应该这样尝试-

.clr{
  clear:both
}
body {
 font-family: serif;
 height:100%;
 width: 100%;
}

#container {
 width: 650px;
 border-radius: 10px;
 height: 280px;
 background-color: pink;
}
.header {
text-align: center;
position:relative;
top: 15px;
}
/* Figure one */
figure{
 float: left;
}
img {
 width: 150px;
 height: 150px;
 background: black;
 
}

meter {
 width: 90px;
}
.meter-col{
 float: left;
 
}
<div id="container">
 <div class="header">
  <h2>Profile</h2>
 </div>
  
 <figure>
  <figcaption>User: Kent</figcaption>
  <img src="avatar.png" />
 </figure>
 <div class="meter-col">
  <div>Profile completed: 60%</div>
  <meter value="60" min="0" max="100">2 out of 10</meter>
 </div>
    <div class="clr"></div> 
</div>

希望对你有帮助。

<div id="container">
    <div class="header">
        <h2>Profile</h2>
    </div>
    <figure>
        <figcaption>User: Kent</figcaption>
        <img src="avatar.png" />
        <div>
        Profile completed: 60%
        <meter value="60" min="0" max="100">2 out of 10</meter>
        </div>
    </figure>

</div>

不需要其他更改,因为标签具有默认的 "block" 行为。

我改变了一些东西。我还更新了一些东西 HTML5 (首选)。我将所有内容更改为显示块,并将所有内容所在的 div 更改为 float: left。 JS fiddle link 下面。

https://jsfiddle.net/tkjxLfjy/6/

HTML:

<body>
 <div id="container">
  <header>
   <h2>Profile</h2>
  </header>
<figure>
 <figcaption>User: Kent</figcaption>
 <img src="avatar.png" />
 <label for="meter">Profile completed: 60%</label>
 <meter name="meter" value="60" min="0" max="100">2 out of 10</meter>
</figure>
</div>
</body>

CSS:

body {
    font-family: serif;
    height:100%;
    width: 100%;
}
#container {
    width: 650px;
    border-radius: 10px;
    height: 280px;
    background-color: pink;
    float: left;
}
header {
    text-align: center;
    position:relative;
    top: 15px;
}
/* Figure one */
 img {
    width: 150px;
    height: 150px;
    background: black;
    display: block;
}
meter {
    float: left;
    width: 90px;
}