CSS:我如何将两个元素放在彼此相邻的中心(内联块),只与其他元素共享一个容器?
我正在为一个网站创建一个用户样式,所以我不能更改任何HTML,只能更改纯CSSCSS:我如何将两个元素放在彼此相邻的中心(内联块),只与其他元素共享一个容器?,css,userstyles,Css,Userstyles,我正在为一个网站创建一个用户样式,所以我不能更改任何HTML,只能更改纯CSS <div class="container"></div> <divs> <h2s> <uls> <forms> <h3></h3> <p></p> </div> 我想让h3和p彼此相邻,在容器的水平中心。所以,我给他们两个显示:内联块和文
<div class="container"></div>
<divs>
<h2s>
<uls>
<forms>
<h3></h3>
<p></p>
</div>
我想让h3和p彼此相邻,在容器的水平中心。所以,我给他们两个显示:内联块和文本对齐:中心。这使得它们彼此相邻,但不是水平居中。文本对齐:居中仅在应用于容器时有效,但这将使整个站点的其他元素的所有文本居中
我对CSS比较陌生,我一直在寻找一种方法来实现这一点,但没有结果。试着将您的代码发布到一个页面中 据我所知,也许只在h3和p标签上添加一个边距就足够了 保证金:0自动
如果使用
显示:内联块
您不必使用任何float
属性
我猜你的意思是
文本对齐:居中代码>使它们水平居中。如果您希望它们垂直居中,可以使用vertical align:middle代码>如果您可以添加一个新的div,您可以尝试
HTML
<div class = "container">
<div class = "side_center">
<h3>h3 element</h3>
<p> p element </p>
</div>
</div>
但是我建议您通过添加单独的类或ID来设置常用元素的样式,因为不这样做可能会影响页面中的其他h3和p标记。这是你的电话号码
新编辑
h3, p {
display: inline-block;
}
.side_center {
margin: 0px auto;
display: table;
}
h3 {
text-align: center;
margin-left: -253px;
}
p {
margin-top: -22px;
margin-right: -189px;
text-align: center;
}
PS:这与您的only有关。我删除了float属性,但它仍然不起作用。我的意思是我希望他们水平居中。如果你能提供一个具体的例子,这将更容易帮助你解决问题。通过具体的例子,我的意思是发布完整的html和css:)完整的html就是这个网站。我为论坛元素制作的CSS是这样的:它是论坛的底部,谁在线,我想把它应用到下面的段落。我在CSS中为它设置的选择器是:.navbar.panel+h3和下一个。我试图在JSFIDLE中放置一个基本示例,但是display:inline block没有使h3和p彼此相邻。我试图在那里重新创建代码,但是display:inline block没有使它们彼此相邻。我甚至试着让它们向左浮动,但那也不起作用。你的保证金建议不起作用。D:你不能就这样把容器放在它周围吗?因为这将有助于你把元素放在中心;h3和p在那里不是相邻的。你的解决方案显然在JSFIDLE中工作,但是对于一些我找不到的原因,它不适用于网站D:这很奇怪,因为我使用了该网站的代码。。只是把它精简为只包含所需的元素。我不能添加元素,我在做用户风格。我只能尝试使用CSS。在这种情况下,您可以使用position:relative;左:x%;其中x是一个整数,并使用媒体查询调整各种分辨率。否则,您必须将容器div本身居中。您有一个未关闭的div标记。关闭它。我已经调整了你的网站,并把它们带到中心。请参见答案中我的新编辑部分。它将它们放在中心位置,但这并不实用,因为随着越来越多的用户浏览论坛,“p”变得越来越宽。然后,我建议您将它们文本对齐到中心位置,并将它们一个接一个地放置,而不是使事情变得复杂(因为您使用的是userstyle)。那看起来也不错P至少直到找到解决方案为止。