You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Flexbox实现底部图片与文本的反转?

问题解决:Flexbox 实现两列反转布局

核心问题出在CSS选择器的写法上:

你写的 .full-width-two-column .reversed 表示选择.full-width-two-column元素内部的.reversed子元素,但实际你的HTML里.reversed是和.full-width-two-column绑定在同一个div上的(<div class="full-width-two-column reversed">),正确的选择器应该是没有空格的复合选择器:.full-width-two-column.reversed。

修正后的CSS代码:

@media screen and (min-width: 768px){
    .full-width-two-column {
        height: 100vh;
        display: flex;
        justify-content: flex-start;
        align-content: flex-start;
        align-items: stretch;
        row-gap: 1.618rem;
    }

    /* 修正选择器:去掉空格,匹配同时拥有两个类的元素 */
    .full-width-two-column.reversed {
        flex-direction: row-reverse;
    }

    .full-width-two-column .image,
    .full-width-two-column .content-holder {
        display: flex;
    }

    .full-width-two-column .image {
        aspect-ratio: auto;
        background-color: #dadada;
        flex: 0 0 50%;
    }

    .full-width-two-column .content-holder {
        padding: 1.618rem;
        display: flex;
        align-items: center;
    }

    .full-width-two-column .content-holder .content {
        max-width: 20rem;
    }
}

解释下为什么之前的写法无效:

  • 带空格的选择器是后代选择器,会找父元素下的子元素,但你的.reversed不是子元素,是当前元素的另一个类。
  • 复合选择器(无空格)表示同时拥有这两个类的元素,这样flex-direction: row-reverse才会作用到正确的flex容器上,实现图片和文本列的反转。

这样修改后,第二个.full-width-two-column容器就会自动把内部的image和content-holder调换顺序,达到你要的反转效果。

内容的提问来源于stack exchange,提问作者ginkgo_biloba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 15:05:31