svg를 적용하는 방법에는 크게 두가지가 있다.
1. svg 코드를 HTML 부분에 삽입한다.
2. svg 파일을 생성하고 svg 코드를 삽입한 후 해당 .svg를 import 받아 삽입한다.
이 과정에서 발생한 오류은 아래에서 정리했다.
1, 2번 공통 오류
선과 배경색이 black으로 설정 되어 있어서 구분이 안갔는 데 strock(선 속성) 사용해서 해결했다.
[HTML기초문법] 15강 SVG태그 Stroke속성 - 오쌤의 니가스터디
1. SVG 태그란? - SVG태그는 Scalable Vector Graphics의 약자로 벡터 기반 그래픽을 XML 형식으로 정의하는 것을 의미합니다. - SVG태그는 SVG그래픽을 담기 위한 요소입니다. - SVG태그 내부에 담을 수 있는
ossam5.tistory.com
2번 오류
[nextjs] next.js에서 svg를 import하는 방법
next.js 프로젝트에서는 custom.d.ts에 추가하는 방식으로 되지 않습니다. (next.js를 사용하지 않을 경우) Steps 1. @svgs/webpack 설치 2. next.config.js 수정 아래와 같이 export object안에, webpa
velog.io
2번 오류 해결 과정 1
1) @svgs/webpack 라이브러리 설치
$ npm install --save-dev @svgr/webpack
2) next.config.js 수정
(export object 안에 webpack 함수를 추가한다.)
module.exports = {
webpack(config) {
config.module.rules.push({
test: /\.svg$/,
use: ["@svgr/webpack"]
});
return config;
}
};
3) component에서 import 받아서 사용
import Github from '../github.svg';
const Contact: React.FC = () => {
return (
<div>
<div className='card-title'>CONTACT</div>
<Github />
<div>https://github.com/devstefancho</div>
</div>
);
};
export default Contact;
[nextjs] next.js에서 svg를 import하는 방법
next.js 프로젝트에서는 custom.d.ts에 추가하는 방식으로 되지 않습니다. (next.js를 사용하지 않을 경우) Steps 1. @svgs/webpack 설치 2. next.config.js 수정 아래와 같이 export object안에, webpa
velog.io
2번 오류 해결 과정 2
해결 과정 1번에서 설치한 @svgr/webpack v6의 문제로 인해 발생한 오류였다.
→ 버전을 v5.5.0으로 다운그레이드 시킨 후 실행하면 정상적으로 작동한다.
[Storybook] storybook @svgr/webpack 에러 해결방법
문제는 @svgr/webpack이였다.
velog.io
<svg className="home-svg" role="img" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" aria-labelledby="homeAltIconTitle">
<title id="homeAltIconTitle">Home</title>
<path d="M3 10.182V22h18V10.182L12 2z" />
<rect width="6" height="8" x="9" y="14" />
</svg>
svg {
width: 28px;
height: 28px;
// stroke : 선 속성
stroke: #777777;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
margin: 2px 25px;
}
[Storybook] storybook @svgr/webpack 에러 해결방법
문제는 @svgr/webpack이였다.
velog.io
'🧱 언어 모음집 > CSS' 카테고리의 다른 글
[CSS] Pretendard 웹폰트 적용하는 방법 (0) | 2022.04.07 |
---|---|
[CSS] display: none vs visibility: hidden (0) | 2022.03.08 |
[CSS] :hover 시 이미지 변경 (0) | 2022.02.24 |
[CSS] :hover 시 transition 적용하기 (0) | 2022.02.23 |
[CSS] relative와 absolute의 관계성, 차이점 (0) | 2022.02.23 |
댓글