[英]Left align a rotated text inside a flex
我在网页中有一个类似卡片的结构。 每张卡片都是一个图表。 我需要为卡片的任何纵横比显示每个图形的 y 轴标签。
HTML
<div class="grid">
<div class="chart">
<h2>Test 1</h2>
<div class="graphAxisY">test y lable</div>
<Graph class="graph">(This is the graph)</Graph>
<div>test x lable</div>
</div>
<div class="chart">
<h2>Test 2</h2>
<div class="graphAxisY">test y lable</div>
<Graph class="graph">(This is the graph)</Graph>
<div>test x lable</div>
</div>
</div>
CSS
.graphAxisY{
transform-origin: 0% 0%;
transform: rotate(270deg) translate(-22%, 25%);
background-color: transparent;
z-index: 100;
}
.grid{
display: grid;
grid-template-columns: repeat(auto-fit,33%);
}
.chart{
display: flex;
flex-direction: column;
padding-right: 0.8vw;
}
请注意,Y 标签文本未在垂直轴上居中。 如何为具有可变纵横比的弹性框放置 Y 轴标签?
你能不能把chart
显示改为“flow-root”,像这样?:
.graphAxisY { transform-origin: 0% 0%; transform: rotate(270deg) translate(-33%, 0%); background-color: transparent; z-index: 100; } .graphAxisX { text-align: center; } .grid { display: grid; grid-template-columns: repeat(auto-fit, 33%); } .chart { display: flow-root; flex-direction: column; padding-right: 0.8vw; } .graph { padding: 0% 15% 25% 15%; display: flex; }
<div class="grid"> <div class="chart"> <h2>Test 1</h2> <div class="graphAxisY">test y label</div> <Graph class="graph">(This is the graph)</Graph> <div class="graphAxisX">test x label</div> </div> <div class="chart"> <h2>Test 2</h2> <div class="graphAxisY">test y label</div> <Graph class="graph">(This is the graph)</Graph> <div class="graphAxisX">test x label</div> </div> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.