将 HTML 元素与另一个 HTML 元素的底部对齐,不使用绝对值

发布于 2024-11-10 15:33:34 字数 552 浏览 5 评论 0原文

我有一个新问题。我需要在一个 HTML 元素中将其垂直对齐到另一个元素的底部,但我可以使用绝对值,一次第二个元素可以具有不同的高度。

请看一下这个jsFiddle

需要保持在

的底部,如 这里 - 解决办法

我尝试了 vertical-align 但它不起作用。

我怎样才能做到呢?如果需要,我可以毫无问题地更改 HTML 结构。

编辑:抱歉,但我认为我没有留下明确的内容:我不能使用margin-top或类似的,因为font-sizeH1 的 > 是可变的。

再见。

I have a new problem. I need do a vertical align in a HTML element to bottom of another, but I can use absolute value, one time that the second element can have different height.

Take a look on this jsFiddle please.

The <a> need stay on bottom of <h1> like here - workarrounded.

I tried vertical-align but it don't works.

How I can do it? If need, I can change HTML structure without problem.

Edit: sorry, but I do not think I left something clear: I can't use margin-top or similar, because the font-size of H1 is variable.

Bye.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

往事随风而去 2024-11-17 15:33:34

您无需指定精确的 px 偏移量即可完成此操作,如下所示: http:// jsfiddle.net/Tu7bA/14/

相关新CSS:

.header-container {
    overflow: hidden;
    position: relative
}
.header-container > ul {
    position: absolute;
    bottom: 0; right: 0
}
.header-container ul > li {
    float: right;
    text-decoration: none;
    color: #0A27D5;
    font-size: 8pt;
    margin-left: 16px;
}
.header-container > h1.first {
    float: left;
    font-size: 26pt;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

HTML:

<div class="content-block">
    <div class="header-container">
        <h1 class="first">Lorem Ipsum</h1>
        <ul>
            <li><a href="./Edit">editar</a></li>
            <li><a href="./Attach">anexar</a></li>
        </ul>
    </div>
    <p>
        Lorem ipsum dolor sit amet..
    </p>
</div>

You can do it without having to specify an exact px offset like this: http://jsfiddle.net/Tu7bA/14/

Relevant new CSS:

.header-container {
    overflow: hidden;
    position: relative
}
.header-container > ul {
    position: absolute;
    bottom: 0; right: 0
}
.header-container ul > li {
    float: right;
    text-decoration: none;
    color: #0A27D5;
    font-size: 8pt;
    margin-left: 16px;
}
.header-container > h1.first {
    float: left;
    font-size: 26pt;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

HTML:

<div class="content-block">
    <div class="header-container">
        <h1 class="first">Lorem Ipsum</h1>
        <ul>
            <li><a href="./Edit">editar</a></li>
            <li><a href="./Attach">anexar</a></li>
        </ul>
    </div>
    <p>
        Lorem ipsum dolor sit amet..
    </p>
</div>
╰つ倒转 2024-11-17 15:33:34

这是 JSFIDDLE 上更正的代码

Here is the corrected code on JSFIDDLE

放肆 2024-11-17 15:33:34

将控件插入元素并使用它,例如更改 margin-top 属性。

Insert the controls into element and work with this, for example changing margin-top proprety.

古镇旧梦 2024-11-17 15:33:34

vertical-align 不起作用,因为它仅在其区域内对齐自身,该区域位于 h1 下方。因此,在这里:

div.content-block > a {
float: right;
text-decoration: none;
color: #0A27D5;
font-size: 8pt;
margin-left: 16px;
}

添加 margin-top: 将其稍微向下推,例如

div.content-block > a {
float: right;
text-decoration: none;
color: #0A27D5;
font-size: 8pt;
margin-left: 16px;
margin-top: 15px;
}

vertical-align doesn't work because it only aligns itself in its area, which is below h1. So, here:

div.content-block > a {
float: right;
text-decoration: none;
color: #0A27D5;
font-size: 8pt;
margin-left: 16px;
}

Add margin-top:<value> to push it a little down, say

div.content-block > a {
float: right;
text-decoration: none;
color: #0A27D5;
font-size: 8pt;
margin-left: 16px;
margin-top: 15px;
}
我的鱼塘能养鲲 2024-11-17 15:33:34

也许这很好jsfiddle。希望它有帮助

maybe this is fine jsfiddle.Hope it helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文