Подтвердить что ты не робот

Можете ли вы наложить прозрачный div на изображение

Я пропустил этот пример на изображении ниже, которое сделано во Flash, и мне было интересно узнать, похоже ли подобное влияние на прозрачный ящик внизу изображения с текстом на нем с помощью CSS или чего-то другого, кроме флэш-памяти?

http://www.ajaxline.com/files/imgloop.png http://www.ajaxline.com/files/imgloop.png

4b9b3361

Ответ 1

Конечно, вот кросс-браузерный способ:

<html>
  <head>
    <style type="text/css">
      div.imageSub { position: relative; }
      div.imageSub img { z-index: 1; }
      div.imageSub div {
        position: absolute;
        left: 15%;
        right: 15%;
        bottom: 0;
        padding: 4px;
        height: 16px;
        line-height: 16px;
        text-align: center;
        overflow: hidden;
      }
      div.imageSub div.blackbg {
        z-index: 2;
        background-color: #000;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
        filter: alpha(opacity=50);
        opacity: 0.5;
      }
      div.imageSub div.label {
        z-index: 3;
        color: white;
      }
    </style>
  </head>
    <body>
      <div class="imageSub" style="width: 300px;"> <!-- Put Your Image Width -->
        <img src="image.jpg" alt="Something" />
        <div class="blackbg"></div>
        <div class="label">Label Goes Here</div>
      </div>
    </body>
</html>

Этот метод не требует JavaScript, не вызывает потери текста ClearType в IE и совместим с Firefox, Safari, Opera, IE6,7,8... К сожалению, он работает только для одной строки текста, Если вы хотите несколько строк, отрегулируйте свойства div.imageSub div height и line-height или используйте следующие (изменения в CSS и требуемые метки должны быть указаны дважды).

<html>
  <head>
    <style type="text/css">
      div.imageSub { position: relative; }
      div.imageSub img { z-index: 1; }
      div.imageSub div {
        position: absolute;
        left: 15%;
        right: 15%;
        bottom: 0;
        padding: 4px;
      }
      div.imageSub div.blackbg {
        z-index: 2;
        color: #000;
        background-color: #000;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
        filter: alpha(opacity=50);
        opacity: 0.5;
      }
      div.imageSub div.label {
        z-index: 3;
        color: white;
      }
    </style>
  </head>
    <body>
      <div class="imageSub" style="width: 300px;"> <!-- Put Your Image Width -->
        <img src="image.jpg" alt="Something" />
        <div class="blackbg">Label Goes Here</div>
        <div class="label">Label Goes Here</div>
      </div>
    </body>
</html>

Ответ 2

Конечно.

<div style="background-image: url(image.png);" >

  <div style="position:relative; top:20px; left:20px;">
    Some text here
  </div>
</div>

Ответ 3

<html>
    <body>
        <div style="position: absolute; border: solid 1px red">
            <img src="http://www.ajaxline.com/files/imgloop.png"/>
            <div style="position: absolute; top:0px; left:40%; width:20%; height: 10%; background-color: gray; opacity: .80; -moz-opacity: 0.80; filter:alpha(opacity=80);"/>
            <div style="position: absolute; top:0px; left:40%; width:20%; height: 10%; color: white;">
                Hello
            </div>
         </div>
    </body>
</html>