#html #canvas
#HTML #холст
Вопрос:
Я беру div
внутри canvas
элемента, подобного следующему:
<canvas>
<div></div>
</canvas>
Здесь оба они имеют высоту и ширину. Но здесь я не вижу div
!
Разве невозможно использовать div
or p
внутри canvas
?
Ответ №1:
Вы не можете размещать элементы внутри canvas (и отображать оба элемента); они отображаются только в том случае, если браузер не понимает элемент canvas.
Если вы хотите разместить элементы в той же области, что и холст, вот один из методов (среди многих), который позволит вам это сделать:
HTML
<div id="canvas-wrap">
<canvas width="800" height="600"></canvas>
<div id="overlay"></div>
</div>
CSS
#canvas-wrap { position:relative } /* Make this a positioned parent */
#overlay { position:absolute; top:20px; left:30px; }
Вот еще один метод, который позволяет содержимому div нормально перемещаться и превращает холст в фон для содержимого:
CSS
#canvas-wrap { position:relative; width:800px; height:600px }
#canvas-wrap canvas { position:absolute; top:0; left:0; z-index:0 }
Комментарии:
1. @BharatPatil Никого не волнует IE9. Доля рынка ниже 3%. Это составляет 3% только от версий IE, поэтому, если вы считаете среди всех браузеров, это еще меньше.
2. Год спустя, согласно netmarketshare.com/… На IE9 приходится 6,67% от общей доли рынка настольных компьютеров.
3. Срок службы IE8, 9 и 10 истек в январе 2016 года, что означает, что Microsoft не поддерживает их, кроме как по специальным лицензиям с расширенным сроком службы, и нет исправлений для системы безопасности. В конце 2018 года вы, вероятно, сможете игнорировать их, если только вы не работаете на предприятии, которое, как вы знаете, все еще имеет их. IE11, конечно, все еще жив и работает. microsoft.com/en-gb/windowsforbusiness/end-of-ie-support