2011-06-16 4 views
0

Я пытаюсь создать округленные изображения (фиксированная ширина в этой ситуации, поэтому я просто хочу использовать наложение png), но угловой накладной, похоже, не появляется.Наложение фоновых изображений не отображается

Наценка выглядит следующим образом:

<div class="rounded roundTop"> 
    <div class="rounded roundBottom"> 
     <img /> 
    </div> 
</div> 



.rounded { 
    position: relative; 
    z-index: 99; 
} 

.roundTop{  
    background: transparent url('../@gui/round-img-top-155.png') top left no-repeat; 
} 

.roundBottom{ 
    background: transparent url('../@gui/round-img-bottom-155.png') bottom left no-repeat; 
} 

img { 
    width: 155px; 
    padding-right: 12px; 
    position: relative; 
    z-index: 1; 

В .rounded дивы, как представляется, в нужном месте, но их происхождения не видны, и я не уверен, почему!

Вот jsfiddle

Я стараюсь назначая сплошной цвет фона для контейнера дивы, и они идут по изображению, несмотря на Z-индекс.

Я могу получить границы перед изображением, отправив изображение на спину, но затем оно покрывается всеми остальными элементами на странице.

+0

Что такое пустой тег img? Насколько я вижу, они там, где они должны быть. Только проблема может заключаться в том, что у вас ничего не указано для , который оставляет его пустым и, вероятно, 0px height. Редактировать: Может быть, это и путь @gui? никогда не видел путь с знаком @. – robx

+0

У вас есть веб-линк? – thirtydot

+0

Я только что взял img src из-за того, что это был относительный путь, и у меня нет проекта в настоящее время. – Damon

ответ

0

Я предполагаю, что они вообще не появляются? Я рискну предположить, что это из-за вашего URL. Я не думаю, что «@» является допустимым символом для использования в именах файлов (если это так, это не очень хорошая практика).

Хороший способ проверить, чтобы браузер находил файл, чтобы открыть инструменты для разработчиков браузера (для Firefox вам нужно установить Firebug, другие встроены) и посмотреть на CSS Посмотреть. Вы должны иметь возможность щелкнуть или навести указатель мыши на URL-адрес и посмотреть, загружает ли он предварительный просмотр (я знаю, что работает в Firebug, я думаю, что он работает в других, если нет, вы должны быть в состоянии сказать, загружен ли файл в режиме просмотра).

Помимо этого, живая ссылка или jsfiddle помогут.

+0

ссылки на изображение идут вверх. Символы @ были странными и для меня, но они являются частью CMS, которую я должен использовать. – Damon

0

Это исправить:

.roundBottom{ 
    padding: 18px 0px; 
    background: transparent url('http://ctrlshiftweb.com/round-img-bottom-155.png') bottom left no-repeat; 
} 

Вы должны принять во внимание высоту изображения. : D

+0

это не относится к оверлеям, находящимся за изображениями. это действительно помогает им правильно подойти ... но я смущен, почему это проблема. Я хочу, чтобы изображение было того же размера, что и его контейнер div. – Damon

+0

Вы серьезно? Вы помещаете ** непрозрачный ** образ на div. Конечно, вы не увидите «углы», потому что это фоновой образ. Если вы хотите, чтобы он работал так, как вы его закодировали, сделайте свой jpg-образ в png прозрачным. – kei

+0

Ваш код с измененным изображением (png с прозрачностью): http://jsfiddle.net/ynzRp/ – kei

1

Вам необходимо удалить z-index из элементов контейнера и установить отрицательный z-index на картинке, see here.

+0

все еще не совсем ясно, почему это необходимо ..разве не важно, что содержит что, если z-индекс определенно установлен? (Я думаю, ясно, что это делает ...) – Damon

+0

, так что я не могу позиционировать элементы контейнера поверх img, я должен поместить контейнеры под изображение? а затем разместить все остальные содержащие элемент (обертку, содержимое, сообщение и т. д.) за этим? Там должен быть лучший путь! – Damon

+0

@ Damon, вам не нужно позиционировать изображение под контейнерами, используя отрицательный индекс z для изображения и вообще не использовать z-index для контейнеров. Просто посмотрите на пример в jsfiddle. – jeroen

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