HTML5/CSS3 - Пользовательская форма Div с картами google внутри - программирование
Подтвердить что ты не робот

HTML5/CSS3 - Пользовательская форма Div с картами google внутри

Мне нужно создать пользовательский элемент формы, содержащий карту "google maps". Таможенная граница это прекрасная, я могу справиться с ней, используя png, но сама форма, у меня есть только некоторые теории, как это сделать, но ничего на практике. Но я думаю, что есть способ сделать это, используя html5 canvas, чтобы сделать пользовательскую форму на div и использовать в css переполнение: скрытый, чтобы скрыть то, что выходит из div.

прямо сейчас у меня есть следующая структура:

<html>
  <body>
    <div class="Orange_Background"></div>
    <div class="FX_Lines_over_background"></div>
    <div class="GoogleMaps_Container"></div>
  </body>
</html>

Так что, как вы можете, я не могу использовать фон как png, чтобы отображать только карту, и потому, что мне нужно, чтобы карта была интерактивной.

Вот образ того, что я говорил.

Teh Image

Если кто-то может мне помочь, я буду благодарен!

Спасибо всем.

PS: Это может быть и с jquery! (если кто-то знает плагин, который это делает.)

4b9b3361

Ответ 1

RE: Ответ Zee Tee: если вы идете по этому маршруту, вы можете установить указатели-события: none (в вашем css) для div, содержащего изображения. это отправит все события мыши на слой под ним. Извините, у меня пока нет возможности комментировать ответы: D

Если вам не нужна поддержка IE (6-8), вы можете использовать 3D-преобразования CSS, чтобы сделать это прямо на слое карты. Но карта будет выглядеть искаженной, если эффект, который вам нужен, если не предыдущий ответ по-прежнему является наилучшим подходом

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

https://developer.mozilla.org/en/CSS/-webkit-mask-image

Ответ 2

Вам нужно будет создать кадр с 4 различными слоями: верхний/правый/левый/нижний и применить более высокий z-индекс, фоновое изображение, используя прозрачное изображение PNG, чем сама карта. Позиция должна быть абсолютной или фиксированной на этих уровнях.

Как вы можете видеть ниже, 4 изображения - черные выделенные области, и их нужно будет нарезать индивидуально, тогда вы можете поместить их поверх слоя карты. Это удерживает среднюю область открытой без каких-либо перекрывающихся слоев, поэтому карта все еще функционирует:

Вы можете сохранить весь оранжевый фон за слоем карт, это не имеет значения, потому что вы сначала наложите его на карту, а затем на 4 слоя кадра, которые, если правильно нарезать и правильно разместить, просто перекрывают фон образ. Весь фоновый рисунок, очевидно, будет полным изображением, без каких-либо карт на нем, но все оранжевые с вашими полосами и градиентом. Если вы спросите меня, это займет много времени, но это возможно.

enter image description here

ПРИМЕЧАНИЕ. Прозрачные области - это только белые пробелы, которые вы видите в черных бликах, остальное, очевидно, будет вашим изображением.