代码之家  ›  专栏  ›  技术社区  ›  RGriffiths

Vuetify v行背景图像高度

  •  0
  • RGriffiths  · 技术社区  · 4 年前

    我试图将背景图像放在一个v行中,这样宽度就会填满屏幕,v行的高度会自动调整。

    <v-row class="bg" align="center" justify="center">
        <v-col cols="12" sm="6" md="4">
          Date picker 1
        </v-col>
    
        <v-col cols="12" sm="6" md="4" background="white">
          Date picker 2
        </v-col>
    </v-row>
    
    .bg {
      background: url("../assets/hills.jpg") no-repeat center center;
     }
    

    没有任何身高风格,我排名第一。我希望效果如#2所示:

    enter image description here

    那么,我如何设置v行的高度以适应图像的高度呢?我意识到

    height: 100% 
    

    不会增加包含v行的高度-样式应用于v行而不是图像。这个

    height: 100vh;
    

    在一定程度上有效,但高度反映的是视口的高度,而不是背景图像的高度,因此太大。固定高度也可以

    height: 600px;
    

    但需要根据屏幕尺寸进行调整。

    有解决办法吗?

    0 回复  |  直到 4 年前
        1
  •  1
  •   swervo    4 年前

    如果你想使用图像,你可以使用:

    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
    

    然后,这将增长到内容的大小(前提是父级 position: relative; 同时保持比例。如果你用媒体查询或类似的方式调整内容的填充,你应该能够得到你想要的效果。