브라우저간에 모양의 경계 상자가 일치하지 않는 것으로 나타났습니다. 나는이 포함 된 SVG를 만든 :SVG 요소의 경계 상자가 브라우저간에 일치하지 않습니다.
<rect x="100" y="100" width="100" height="100" id="rect" fill="gray" stroke="black" stroke-width="2px" />
<path d="M100 100 L100 200 L200 200 L200 100 z" id="path" fill="red" stroke="white" stroke-width="2px"/>
내가 크기 크롬과 IE에 경계 상자 (element.getClientBoundingBox)를 얻으려고 노력 w됩니다 = 100, H = 100과 위치입니다 X = 100, Y = 100 두 셰이프 모두. 하지만 첫 번째 형태의 FireFox에서 w = 102, h = 102 (크기 + 경계선) 및 x = 99, y = 99가되었습니다. 경로에서 값은 더욱 이상합니다 (w = 116, h = 116, x = 92, y = 92).
Firefox 버그입니까? Bugzilla에 게시해야합니까? SVG 사양이 그것에 대해 뭐라고 말합니까? (나는 이것에 관련된 어떤 정보도 찾을 수 없었다). 이 문제를 해결하기위한 방법에 대해 아는 사람이 있습니까? 특히 경로 요소는 나에게 예측할 수없는 종류입니다.
해명 해 주셔서 감사합니다. 잠시 동안이 모양의 위치는 많은 브라우저에서 다르지만 이제는 차이점이 getClientBBox에 의해 반환되는 값이라는 것을 이해합니다. – Pax0r
@ robert-longson 더 이상 그렇지 않습니다. 맞습니까? 오늘, getClientBoundingBox는 스트로크를 포함하지 않는 것처럼 보입니다 –
@DonBox Firefox 코드는 이와 관련하여 변경되지 않았지만 여전히 스트로크를 반환합니다. 그렇지 않으면 bugzilla에서 버그를 제기 할 수 있습니다. –