html两个盒子怎么左右对其,关于html:在同一行上左右对齐两个内联块

如何对齐两个内联块,以便一个在左边,另一个在同一行? 为什么这么难? 是否有类似LaTeX的 hfill这样的东西可以占用它们之间的空间来实现这一目标?

我不想使用浮点数,因为有了内联块,我可以将基线对齐。 当窗口对于两个窗口而言都太小时,使用内联块,我可以将文本对齐方式更改为居中,并且它们将居中对齐。 相对(父)+绝对(元素)定位与浮点数存在相同的问题。

HTML5:

Title

A Link

Another Link

A Third Link

CSS:

header {

//text-align: center; // will set in js when the nav overflows (i think)

}

h1 {

display: inline-block;

margin-top: 0.321em;

}

nav {

display: inline-block;

vertical-align: baseline;

}

Thery彼此相邻,但我希望右侧的nav。

430038b02b35bd9678a0ffda4e2fea23.png

AFAIK解决此问题的唯一方法是使用浮动或绝对定位。 您可以使用导航上的margin-top获得相同的基线位置。

只需使用margin-top和float。 没有那种定位或绝对定位就不可能做到这一点。

使用css媒体查询可根据视口的大小更改css。 您可以同时使用position: absolute和inline-block

编辑:自从我回答这个问题以来已经过去了3年,我想还需要一种更现代的解决方案,尽管当前的解决方案是可行的:)

1.Flexbox

到目前为止,它是最短且最灵活的。将display: flex;应用于父容器,并通过justify-content: space-between;调整其子容器的放置,如下所示:

.header {

display: flex;

justify-content: space-between;

}

可以在此处在线查看-http://jsfiddle.net/skip405/NfeVh/1073/

但是请注意,flexbox支持是IE10及更高版本。如果需要

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值