2016-05-18 1 views
0

Я пытаюсь разместить текст за изображением и сделать так, чтобы при наведении курсора изображение исчезло, и только текст позади него виден. Но я столкнулся с проблемой, когда текст не прослушивает div, потому что все дочерние divs устанавливаются как абсолютные. Какие альтернативные решения существуют?Div Дети не прослушивают CSS Когда позиция Absolute

.card { 
    display:block; 
    width:255; 
    height:319; 
    border-radius:1px; 
    overflow:hidden; 
    word-wrap: break-word; 
} 
.card * { position:absolute; } //issue here code makes text come out of div card itself 
.card img:hover { opacity:0; } 

<div class='card'> 
    <p>Title</p><p>2016</p> 
    <p>Description , lots of image description</p> 
    <img src="./img/image1.jpg" width="225" height="319"> 
</div> 
+0

Немного больше информации может быть полезно, возможно, jsfiddle. Но из того, что я собираю из вашего кода, текст, оставляющий div, потому что .card не использует «position: relative;». Назначение .card position: relative будет сохранять текст в div. После этого, возможно, играя с z-index, вы получите текст под изображением. –

+0

Да, это исправление, спасибо, теперь только текст, сидящий друг над другом, является единственной проблемой, спасибо снова! – user4316754

+0

Нет проблем! Ради вопроса, я отвечу на этот вопрос ниже. –

ответ

0

Вы можете назначить:

position:relative; 

в .card, чтобы сохранить текст в пределах дел.

+0

На самом деле это не работает ... Извините, что я создал класс для самого текста и сделал ширину ... по сравнению с тем, что? – user4316754

+0

Ну, ширина текста не должна иметь значения. Если .card имеет положение: относительный, то любой элемент внутри него с положением: абсолютный останется внутри него. У вас есть jsfiddle или другой пример проблемы, которая может пролить свет на нее? –

Смежные вопросы