html - 响应式背景图片不显示

标签 html css responsive-design responsive responsive-images

我尝试用图像在 3 列中创建一些链接,但我不知道为什么这些图像不显示。我搜索了很多关于这些东西的信息,但没有人帮助我。任何人都可以帮我解决这个问题吗? :)

HTML

<div id="place">
    <div class="place_button">

            <div id="choose">
                <a href="">
                    <div class="button image1"></div>
                </a>
            </div>

            <div id="choose">
                <a href="">
                    <div class="button image2"></div>
                </a>
            </div>

            <div id="choose">
                <a href="">
                    <div class="button image3"></div>
                </a>
            </div>

    </div>
</div>

CSS

#place .place_button{
    display:table;
    margin: 0 auto 20px auto;
}

#place #choose{
    float: left;
    margin: 1%;
}

#place .button{
    display: table-cell;
    background-size: cover;
    background-position:center;
  width: 31%;
  height:auto;
    -webkit-transition:1s;-moz-transition:1s;-o-transition:1s;
}
/* There is different images! */
#place .image1{background-image: url('http://swayevents.com/sites/default/files/05_0.jpg');}
#place .image1:hover{background-image:url('https://f4.bcbits.com/img/a0401558592_16.jpg');}

#place .image2{background-image:url('http://swayevents.com/sites/default/files/05_0.jpg');}
#place .image2:hover{background-image:url('https://f4.bcbits.com/img/a0401558592_16.jpg');}

#place .image3{background-image:url('http://swayevents.com/sites/default/files/05_0.jpg');}
#place .image3:hover{background-image:url('https://f4.bcbits.com/img/a0401558592_16.jpg');}

这是我的 JSFiddle

最佳答案

image 设置为 background-image 不会给出高度和宽度。所以你应该需要将高度和宽度的非百分比值添加到声明背景图像的div..

例子:

#place .button{ 
  width: 300px;
  height:200px;
}

编辑

要使其具有响应性,您应该更改列结构。试试这个。

HTML

<div id="place">
  <div class="place_button">
    <a href="" id="choose" >
      <div class="button image1"></div>
    </a>
    <a href="" id="choose" >
      <div class="button image2"></div>
    </a>
    <a href="" id="choose" >
      <div class="button image3"></div>
    </a>
  </div>
</div>

CSS

#place .place_button{
  display:table;
  margin: 0 auto 20px auto;
}

#place #choose{
  display:block;
  float: left;
  margin: 1%;
}

#place .button{
  background-size: cover;
  background-position:center;
  width: 300px;
  height:200px;
 -webkit-transition:1s;-moz-transition:1s;-o-transition:1s;
}

关于html - 响应式背景图片不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38476645/

相关文章:

html - 当标签在容器内时,如何使 div 元素浮出其容器

html - 压缩 flexbox 中的图像

html - 如何将文本移动到图像旁边并使文本响应

html - 使用 CSS3 的响应式设计

css - 将所有图像集中在响应式设计上

java - 在java中用 "unclosed tags"解析html

javascript - 如何使用 javascript 将 css-grid 元素放入网格容器中

html - Webfont font-face 不会更改 html 元素的字体,尽管样式已更新

html - 如何在 Bootstrap 中将导航项居中?

html - 使用 li :first-child is grabbing all first-child li elements in a given class