Обрезание блоков по общему контуру
Здравствуйте, появилась проблема, что понятнее ее объяснить я накатал иллюстрацию:
Мне нужно, чтобы все блоки, которые выходят за скругление блока X1 были полностью обрезаны. Проблема в том, что, например, хром обрезает блоки с background-image и relative не по скруглению, а по естественному контуру, то есть по прямоугольнику div'a. Opera вообще обрезает только по первоначальному контуру и только огнелис справляется со своей задаче. Выглядит все примерно так: <div class=".b-knowledge__elemen"> <div class="element-cover__left"></div> <div class="element-cover__leftX2"></div> <!-- Чтобы не один :) --> </div> Код:
.b-knowledge__element{ |
doniv, сделай картинку с прозрачным центром... При наложении поверх чего-либо - будет видна только центральная часть.
|
Цитата:
Во-превых, внутри блока находятся блоки с активными элементами. Во-вторых, снаружи блока реализован сложный фон (черз дата url), и если накладывать картинку с таким фоном, а она судя по радиусу будет довольно большая, то это очень плохо скажется на производительности. |
doniv, тогда остаётся только страдать...
|
...ещё пяток-другой лет...
|
а можно сделать png с вырезов внутри ? и под него мостить, тоесть его в з индекс.
|
Цитата:
|
Может этой ситуации можно как нибудь избежать? Например сама дыра в виде круга - это будет прозрачная область в png, под картинкой например ваши блоки, а на картинку положить map, но если у вас там в блоках совсем уж активное содержимое, например куча кнопочек, которые могут менять свое положение и проч, тогда конечно не подойдет. Хотя.. можно вместе с изменением содержимого этих блоков и map генерировать, трудненько будет, но раз уж такой дизайн
|
Цитата:
В общем, теперь есть о чем подумать :) |
doniv,
Можно любые события на map area повторить на блоках под картинкой. На map определяем над каким элементом будет выполняться действие (каждая area соответствует определенному блоку) и потом это событие на area (пусть e) используем на нужном элементе elem.dispatchEvent(e), как то так, но это просто мысли PS а по поводу дырки, может есть возможность в вашем этом сложном фоне сделать эту дырку? |
Часовой пояс GMT +3, время: 23:04. |