每个文本覆盖不同的2x2图像

时间:2018-01-06 03:12:06

标签: html css background-image centering

好的,前言:我是一个非常业余的编码员。就像在,我刚开始上周,我基本上做的是查找“如何做x”,然后将它与“如何做y”和“如何做z”结合在一个尴尬的想法和代码组合中。

我要做的是将4张图像放置在2x2方向,并留有足够的间距,以便能够很好地查看某些背景并将其全部放在页面上并且半响应(我真的不担心移动或走向极端,但我希望它在不同浏览器尺寸/更改屏幕尺寸等方面看起来不错。

同样,我在这方面非常新秀,并且无法协调所有细节。我知道代码很邋and,可能是“错误的”,但我只是在玩这个游戏。 SOOOO我只是试图将这些图像置于任何具有良好间距的页面上。

body,
html {
  height: 100%;
  margin: 0;
}

.bg {
  background-image: url("http://static1.businessinsider.com/image/587621bcdd08953f208b491a/14-eerily-beautiful-photos-of-europes-first-underwater-art-museum.jpg");
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

ul {
  list-style-type: none;
}

.container {
  position: relative;
  width: 48%;
  float: right;
  margin-bottom: 70px;
}

.image {
  display: inline-block;
  width: 300px;
  height: 200px;
  margin: auto;
  border-radius: 15%
}

.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 200px;
  width: 300px;
  opacity: 0;
  transition: 2s ease;
  background-color: green;
  border-radius: 15%
}

.container:hover .overlay {
  opacity: .75;
}

.text {
  color: white;
  font-size: 1.5vw;
  position: absolute;
  top: 50%;
  left: 35%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
<div class="bg">
  <div class="container">
    <img src="https://i.pinimg.com/736x/96/3b/ee/963beeb07d222d64094a25bc3840b532--easter-bunny-a-bunny.jpg" alt="Avatar" class="image">
    <div class="overlay">
      <div class="text">
        It's a vampire bunneh!!! BUNNICULA!!!! YES!!! HAHAHAHA
      </div>
    </div>
  </div>

  <div class="container">
    <img src="https://i.ytimg.com/vi/Q6xybdaV3xs/maxresdefault.jpg" alt="Avatar" class="image">
    <div class="overlay">
      <div class="text">
        <ul>
          <li>This really isn't my text</li>
          <li>But I'm playing with it anyway</li>
          <li>To show my UL stuff</li>
          <li>or something of that nature</li>
          <li>Hi and thank you</li>
          <li>if you choose to help</li>
          <li>Or if you just want to laugh and watch</li>
      </div>
    </div>
  </div>

  <div class="container">
    <img src="http://www.herts.ac.uk/__data/assets/image/0009/66717/rocket_car_launch.jpg" alt="Avatar" class="image">
    <div class="overlay">
      <div class="text">
        I thought this thing was kinda cool
      </div>
    </div>
  </div>

  <div class="container">
    <img src="https://upload.wikimedia.org/wikipedia/en/e/eb/Spaceball_jump_over_Skydive_35.jpg" alt="Avatar" class="image">
    <div class="overlay">
      <div class="text">
        I've always wanted to go skydiving!
      </div>
    </div>
  </div>
</div>

所以,是的。我所拥有的笨重的东西可能是可怕的设置和混乱,但我只是试图在逻辑上遵循对我有意义的东西而不是任何整体背景知识。任何帮助将不胜感激,即使它告诉我“你是一个白痴,完全重新开始或因为你吮吸而停止编码”。 = P

1 个答案:

答案 0 :(得分:-1)

这是什么意思? https://codepen.io/anon/pen/ZvaOxY

小心position,当你不需要它时,你似乎有点使用它。将您的元素放置在paddingmargin而不是绝对位置和top, bottom, left, right,因为如果您不小心,这可能会导致响应元素出现问题并破坏事物。

使用Bootstrap可以通过几个类实现这一点,而无需自定义css。

与我们一起开始学习,继续学习并尝试新事物。