css - flexbox 中的 span 位置

标签 css flexbox

我的一个 flex 元素有问题。

我正在尝试定位我的 flex div 的 2 个 spans 以便一个在另一个之上,但看起来 flex 的属性强制它们是彼此相邻。

Here is what I'm looking to do (the date element)

这是我所拥有的:

#til-container #til-header #til-date-container {
	display: flex;
	align-items: center;
	position: absolute;
	top: 30px;
	margin: auto;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid #CCC;
	background: white;
}

#til-container #til-header #til-date-container #til-date {
	display: flex;
	align-items: center;
	position: relative;
	margin: auto;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #d24949;
	color: #FFF;
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
	font-weight: 900;
	text-align: center;
}

#til-container #til-header #til-date-container #til-day {
	font-size: 20px;
}

#til-container #til-header #til-date-container #til-month {
	font-size: 10px;
}
<div id="til-container">
	
	<div id="til-header">
		<div id="til-date-container">
			<div id="til-date">
				<span id="til-day">25</span>
				<br/>
				<span id="til-month">dec</span>
			</div>
		</div>
	</div>
	
</div>

我已经尝试了几种方法,例如将跨度显示为 block ,以便它们占据容器的整个宽度并强制下一个跨度位于第一个跨度下方,但这行不通。有什么想法吗?

最佳答案

使用 flex,您可以添加到 #til-date

flex-direction: column;
justify-content: center;

我编辑了您的代码段以添加它:

#til-container #til-header #til-date-container {
	display: flex;
	align-items: center;
	position: absolute;
	top: 30px;
	margin: auto;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid #CCC;
	background: white;
}

#til-container #til-header #til-date-container #til-date {
	display: flex;
	align-items: center;
	position: relative;
	margin: auto;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #d24949;
	color: #FFF;
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
	font-weight: 900;
	text-align: center;

    /* Added */
    flex-direction: column;
    justify-content: center;
}

#til-container #til-header #til-date-container #til-day {
	font-size: 20px;
}

#til-container #til-header #til-date-container #til-month {
	font-size: 10px;
}
<div id="til-container">
	
	<div id="til-header">
		<div id="til-date-container">
			<div id="til-date">
				<span id="til-day">25</span>
				<br/>
				<span id="til-month">dec</span>
			</div>
		</div>
	</div>
	
</div>

关于css - flexbox 中的 span 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40580209/

相关文章:

javascript - 折叠一栏并自动调整另一栏

html - 固定页脚自动向外扩展?

css - 如何能够在 flexbox (CSS) 内滚动覆盖 div?

javascript - 设置动态值 css 动画 stroke-dashoffset

jquery - jquery中奇怪的滑动效果

html - 文本溢出 : ellipsis not working with inline-flex

html - 在没有滚动条的情况下显示整个 div - flexbox

html - 让图像保留在 flex 容器内的链接元素内?

html - 3 个 DIV,1 个容器,水平居中对齐

悬停 svg 文件上的 CSS 不会出现