Вы должны иметь возможность использовать position:relative
вместо абсолютного для вашего первого требования.
Во-вторых, я полагаю, вы можете поместить изображение и холст в промежуток.Холст будет иметь ширину / высоту 100% и будет изменен по мере изменения размера изображения, потому что размер div будет меняться, чтобы соответствовать изображению.
РЕДАКТИРОВАТЬ: на самом деле я не уверен, что position:relative
будет работать.Но я считаю, что если вы используете position:absolute
и родительский элемент имеет position:relative
, то абсолютные позиции будут относительно родительского.