티스토리 뷰
반응형
출처 : http://www.freesens.com/x/?p=835">http://www.freesens.com/x/?p=835
테스트 환경에서 작업하다보면 무의미한 경로를 집어넣어놔서 불러오기를 실패하는 경우가 많은데,
<img>태그는 src로 불러올 때 실패할 경우 onerror 속성을 추가해서 디폴트 이미지를 보여주게 처리하면 된다.
그런데 background-image 로 처리할 경우, 불러오기 실패했을 때 어떻게 처리해야하나 찾아봤더니 생각보다 너무 쉽고 간편하고 명확한 방법이 있었다.
.bg-item1{
background-image: url('../../images/home/main/main-b-2.png'),
url('../../images/home/main/main-b-1.png');
}
이렇게 background-image 속성 자체에 두개의 값을 넣어주면 첫번째꺼 불러오기 실패했을 때, 두번째꺼를 보여준다.
나는 Vue.js를 이용해서 ajax로 불러온 url을 사용해야했기 때문에
<div class="bg-box bg-item1 bg-color1"
:style="'background-image:url('+getImg(list.banner_seq)+'),
url(\'../../images/home/main/main-b-1.png\')'">
이렇게 조금 길어지게 됐지만, 그래도 깔끔한 처리방식이다.
CSS 생각보다 정말 똑똑하게 잘만들어진 친구다.
반응형
'프론트엔드' 카테고리의 다른 글
Chart.js 그래프 마우스 오버시에 이전 데이터 보이는 경우 (chartjs hover data change) (4) | 2019.08.30 |
---|---|
2019.04.18 레저큐 면접 후기 (면접 질문 포함) (0) | 2019.08.30 |
Chart.js 라벨 짤릴 경우 (63) | 2019.08.30 |
js ajax 크로스도메인 요청 에러 (CORS) Access to XMLHttpRequest at from origin has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. (0) | 2019.08.30 |
Vue CLI 3.x 프로젝트 GitHub Pages로 배포하기 (33) | 2019.08.25 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Docker
- 인프런
- Python
- ES6
- 리액트훅
- vue-router
- Vuex
- vuejs
- typeScript
- jsconf
- JavaScript
- js
- promise
- nodejs
- prerender-spa-plugin
- frontend
- Component
- 프론트엔드
- 우아한테크러닝
- axios
- REACT
- ReactNative
- vue-meta
- chartjs
- vue
- vue-cli
- til
- EventLoop
- 상태관리
- asyncawait
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함