2011-10-17 2 views
14

크롬 캔버스 태그의 기본 너비는 300px로 설정됩니다.캔버스 기본 크기

크기가 지정되지 않은 div가 포함 된 크기로 캔버스를 기본 설정하려는 경우 약간의 번거 로움입니다.

예를 들어 here을 사용하면 캔버스가 추가 된 패딩으로 표제의 너비 기본값으로 설정됩니다.

희망이 있습니다.

자바 스크립트없이 가능합니까?

답변

10

div가 있고 해당 div의 작업 만 지정하고 캔버스가 원하는 크기가되도록 레이아웃을 정렬하십시오.

var canvas = document.createElement('canvas'); 
canvas.width = div.clientWidth; 
canvas.height = div.clientHeight; 

그런 다음 div에 캔버스를 추가하십시오.

+0

명백한 대답이지만, 내 문제는 캔버스 태그가 서버 쪽에서 생성되었다는 것입니다. 클라이언트 쪽은 만들어지지 않았습니다. 이 나쁜 습관인가? – Finnnn

+0

동일한 기술을 사용할 수있게되자 마자 캔버스 너비와 높이를 설정하는 데 문제가 없어야합니다. Mozilla Bespin은 div가 크기를 변경했는지 확인하기 위해 지속적으로 확인한 다음 적절하게 캔버스를 다시 설정했습니다. –

+1

사용자가 자바 스크립트를 사용할 수없는 경우 레이아웃이 올바르게 표시되는지 확인하려고합니다. 자바 스크립트를 사용하여 초기 레이아웃의 스타일을 완전히 피할 수 있습니다. canvas 태그의 심각한 제한 사항 인 것처럼 보이지 않습니다. 다시 말하지만, 나는 잘못된 행동이나 나쁜 습관을 사용하고있을 수 있습니다. – Finnnn

19

핀란드, 맞습니다. HTML5 명세서에서

, http://www.w3.org/TR/2012/WD-html5-author-20120329/the-canvas-element.html#the-canvas-element

캔버스 요소는 좌표 공간의 크기를 제어하는 ​​두 속성 가지고 폭과 높이.

이러한 속성을 지정하면 유효한 음수가 아닌 값을 가져야합니다.

width 속성의 기본값은 이고 height 속성의 기본값은 입니다.

+1

http://www.w3.org/TR/2012/WD-html5-author-20120329/the-canvas-element.html#attr-canvas-width –

1

Chrome에서 기본 크기는 300px x 150px임을 확인할 수 있습니다.