Mam HTML, takich jak:centrum html płótno wewnątrz div bez rozciągania płótna
.image-detail {
height: 100%;
width: 100%;
display: block;
position: relative;
}
canvas {
display: block;
}
.image-detail-canvas {
-moz-user-select: none;
-webkit-user-select: none;
max-width: 100% !important;
max-height: 100% !important;
position: absolute !important;
left: 50% !important;
top: 50% !important;
transform: translate(-50%, -50%) !important;
}
<div class="image-detail">
<canvas class="image-detail-canvas" id="image-canvas">
</canvas>
</div>
Jest centrowania płótno ale płótno rozciągania.
Nie chcę, aby płótno było rozciągnięte.
Chcę, aby był wyśrodkowany bez rozciągania. Jeśli płótno jest ustawione poziomo, to poziomo i pionowo.
Twoje jest często zadawane pytanie. Jeśli chcesz uniknąć rozciągania podczas zmiany rozmiaru za pomocą CSS, pozwól, aby płótno ** zmieniło się proporcjonalnie **, ustawiając albo-ale-nie-zarówno szerokość jak i wysokość. Możesz również ustawić szerokość i wysokość elementu canvas, a żadne piksele nie będą rozciągane. Ponownie, jest to często zadawane pytanie na Stackoverflow, więc szukaj Stackoverflow po więcej szczegółów. – markE