Пожалуйста, рассмотрите этот пример: ( рабочий пример )
Объявления стиля:
body {background:#333;font:1em Arial, Helvetica, sans-serif;}
h1 {color:#ececec;text-align:center;margin:1.5em 0 1em;}
h2 {font-weight:normal;font-size:1.15em;
padding-bottom:5px;border-bottom:1px solid #999;}
p {padding-right:1em;color:#000;}
pre {font-size:1em;color:#06f;margin:1em 0;}
#wrapper {position:absolute;width:100px;height:100px;background:#ececec;
overflow:hidden;zoom:1;padding:20px;border-bottom:1px solid #000;
border-right:1px solid #000;border-top:1px solid #fff;
border-left:1px solid #fff;}
.css {float:right;width:50%;}
.markup {float:left;width:50%;margin-right:-1px;}
.box1,
.box2,
.box3,
.box4 {background:#fff;position:absolute;padding:10px;border:1px solid #333;}
.box1 {left:0;top:-20px;}
.box2 {right:0;top:0;}
.box3 {left:0;bottom:0;}
.box4 {right:-20px;bottom:-20px;}
Разметка:
<body>
<h1>overflow:hidden and absolutely positioned elements</h1>
<div id="wrapper">
<div class="markup">
<div class="box1">box 1</div>
<div class="box2">box 2</div>
<div class="box3">box 3</div>
<div class="box4">box 4</div>
</div>
</body>
Как вы можетесм. Box1
и Box4
обрезаны.Как я могу сделать их видимыми за пределами границ div'ов?Обычно поля должны отображаться как всплывающие подсказки (они должны быть самыми верхними элементами на странице).
Критерии относительно предпочтительного решения:
- без изменений разметки
- без использования CSS3
- работает кросс-браузер
- div с идентификатором
wrapper
должен оставаться абсолютно позиционированным и должен оставаться overflow:hidden
Редактировать: Я знаю, что мои требования жесткие, но я должен с ними работать.Я должен решить эту задачу в окружающей среде, над которой у меня нет абсолютного контроля.
Edit # 2: Хорошо, вот почему мне нужно, чтобы ящики не перемещались в разметке.В конкретной ситуации я хочу использовать их как всплывающие подсказки (в частности, советы по красоте) для других элементов.Положение всплывающей подсказки в дереве DOM является результатом внутренней работы библиотеки.Когда я хотел использовать подсказки по красоте, проблема, которая видна в моем примере, не позволяла отобразить всю подсказку: она была обрезана.