svg-mask에 svg-image를 지정하고 싶습니다. 이 같은 마스크에 ID를 사용하여이 작업을 할 수 있습니다 : id를 사용하지 않고 svg 요소에 마스크를 추가 할 수 있습니까?
<svg id="svg1" width="5cm" height="5cm" viewBox="0 0 200 200"
xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
<mask id="mask">
<circle cx="100" cy="100" r="100" fill="white"></circle>
</mask>
</defs>
<rect x="0" y="0" width="200" height="200" fill="red" mask="url(#mask)"></rect>
</svg>
mask=url()
기술을 사용할 수 없다는 것을 의미합니다.
<svg id="svg2" width="5cm" height="5cm" viewBox="0 0 200 200"
xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
<mask class="mask">
<circle cx="100" cy="100" r="100" fill="white"></circle>
</mask>
</defs>
<rect x="0" y="0" width="200" height="200" fill="red" mask="url(can't use this)"></rect>
</svg>
마스크가 클래스 대신 ID의이 있다면 나는 RECT 요소에 마스크를 적용 할 수있는 방법이 있나요 ? 어쩌면 자바 스크립트 또는 다른 방법으로 생각하지 않았다.
전체 이야기/컨텍스트 : 실제로 PHP를 Joomla를위한 SVG 이미지 슬라이더 모듈을 제작하고있다. 이 PHP는 javascript, css 및 svg가 포함 된 모듈을 생성합니다. 나는 자바 스크립트를 사용하여 마스크를 움직입니다. 실제로 고유 한 ID로 작업하고 있습니다. id를 참조하지 않고 요소에 마스크를 할당하는 방법이 있는지 궁금합니다. 나는 내 고유의 ID마다 javascript/svg 및 css에서 일부 PHP를 사용해야하기 때문에 내 코드가 좀 더 혼란 스럽기 때문에이 작업을 수행하려고 할 수 있습니다.
마스크는 항상 같은가요? 그렇다면 별도로로드하십시오. 또는 각각에 대해 다른 ID를 생성하고 사용하십시오 (예 : svg 요소에서 파생 됨) – jcaron
@jcaron 마스크가 항상 동일하지는 않습니다. 때로는 같을 수도 있지만 항상 그런 것은 아닙니다. 지금은 다른 ID 접근 방식을 사용하고 있습니다. 그러나 나는 전체 svg에서 오직 하나의 id만을 변경하여 그것을 참조하는 것을 선호 할 것이라고 생각합니다. – RMo