2012-06-15 8 views
0

У меня есть 3 элемента, уложенных друг на друга. Верхний элемент - это содержимое наложения. Второй элемент - это изображение границы фона. Нижний элемент - это фон.CSS Выпало из div?

Что я хочу сделать, это вытолкнуть средний элемент, чтобы я мог видеть верхний элемент в нижнем элементе, но оставьте границу среднего элемента, окружающего верхний элемент.

http://jsbin.com/unimux/4/edit

Как вы можете видеть, что средний элемент блокирует вид на нижний элемент.

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

Edit2: возможно ли получить желаемый эффект с помощью border-image? Престижность любому, кто может сделать это, выглядит не страшно с пограничным изображением.

Edit3: Некоторый прогресс на основе ответа Zuul в: http://jsbin.com/unimux/15/edit

+0

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

ответ

1

Setup новый элемент, с классом, например, .apple и поместите его поверх всех остальных существующих элементов с тем же изображением, что и нижний:

посещайте JS Bin Example Altered!

div.apple { 
    margin: 100px; 
    width: 200px; 
    height: 200px; 
    background: url(http://www.ipadwallpapersonly.com/images/wallpapers/1gk0rv4ng.jpg) center center; 
    } 

Имея изображение по центру и дают правильное значение рентабельности, он имитирует «полый» эффект на div.middle.

Смотрите результат просмотра:

End Result Preview


Если размеры элементов не совпадают, использование CSS position помогает keepping все в нужном месте:

Пример here!

+0

Ну, проблема в том, что сделает границу прозрачной тоже, что нежелательно. – Harry

+0

@Harry Я не вижу границ, объявленных среднему элементу ... – Zuul

+0

Жаль, что средний элемент является границей. Дело в том, чтобы создать границу изображения вокруг верхнего элемента. – Harry

1

Вы не можете сделать это с текущим состоянием CSS. Может быть, просто поместите нижний элемент поверх среднего и работайте?

+0

Я не понимаю вашего предложения о перемещении нижнего элемента поверх среднего. – Harry

1

Как и в случае с egasimus, вы не можете сделать это с помощью CSS.

Попробуйте что-то вроде this, хотя с четырьмя div s создает «окно».

+0

Да, это хорошая идея, довольно сложно сделать это с закругленными границами и изображениями. Однако это не невозможно, и если отчаянно. : D – Harry

+0

Если вы имеете в виду границы-радиусы (: D) внутри, да, это сложно. Но я обновил скрипку с помощью радиуса радиуса снаружи. – ACarter

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