어떤 상황 IMG
에서 CSS와 달리 HTML 태그 를 사용 하여 이미지를 표시하는 것이 더 적합 background-image
합니까?
접근성, 브라우저 지원, 동적 컨텐츠 또는 모든 종류의 기술적 한계 또는 사용성 원칙이 요인에 포함될 수 있습니다.
답변
IMG의 적절한 사용
IMG
사람들 이 페이지를 인쇄 하도록하고 이미지가 기본적으로 포함되도록 하려면 사용하십시오 . — JayTee- 이미지가 경고 아이콘 과 같은 중요한 의미를 갖는 경우
IMG
(alt
텍스트 와 함께 )를 사용하십시오 . 이를 통해 화면 판독기를 포함한 모든 사용자 에이전트에서 이미지의 의미를 전달할 수 있습니다.
IMG의 실용적인 사용
IMG
이미지가 로고나 다이어그램 또는 사람 (사진 사람이 아닌 실제 사람)과 같은 컨텐츠의 일부인 경우 플러스 alt 속성을 사용하십시오 . — sanchothefatIMG
텍스트 크기에 비례하여 이미지를 렌더링하기 위해 브라우저 크기 조정에 의존하는 경우 사용하십시오 .- IE6에서 여러 오버레이 이미지에 사용
IMG
합니다 . 전체 이미지 를 채우 도록 배경 이미지 를 늘리 려면IMG
a와 함께 사용하십시오 .z-index
CSS3 background-size에서는 더 이상 적용되지 않습니다. 아래 6 번을 참조하십시오.img
대신에 사용background-image
하면 배경에서 애니메이션 성능을 크게 향상시킬 수 있습니다.
CSS 배경 이미지를 사용하는 경우
- 이미지 가 내용의 일부가 아닌 경우 CSS 배경 이미지를 사용하십시오 . — sanchothefat
- 텍스트의 이미지 교체를 수행 할 때 CSS 배경 이미지를 사용하십시오 . 단락 / 헤더. — sanchothefat
background-image
사람들 이 페이지를 인쇄 하도록하고 이미지가 기본적으로 포함되지 않게 하려면 사용하십시오 . — JayTee- CSS 스프라이트
background-image
와 같이 다운로드 시간을 개선해야하는 경우 사용하십시오 . background-image
CSS 스프라이트와 같이 이미지의 일부만 보이게 하려면 사용하십시오 .- 창 전체를 채우도록 배경 이미지를 늘이려면
background-image
함께 사용하십시오background-size:cover
.
답변
그것은 흑백 결정입니다. 이미지가 로고나 다이어그램 또는 사람 (재고 사람이 아닌 실제 사람)과 같은 컨텐츠의 일부인 경우 <img />
tag plus alt 속성 을 사용하십시오 . 다른 모든 것에는 CSS 배경 이미지가 있습니다.
CSS 배경 이미지를 사용하는 다른 시간은 예를 들어 텍스트의 이미지 교체를 할 때입니다. 단락 / 헤더.
답변
아직 아무도 언급하지 않은 것에 놀랐습니다 : CSS transitions .
div
의 배경 이미지를 기본적으로 전환 할 수 있습니다 .
#some_div {
background-image:url(image_1.jpg);
-webkit-transition:background-image 0.5s;
/* Other vendor-prefixed transition properties */
transition:background-image 0.5s;
}
#some_div:hover {
background-image:url(image_2.jpg);
}
이것은 페이드 자바 스크립트 또는 jQuery를 애니메이션의 모든 종류의 저장 <img/>
‘들 src
.
MDN 전환에 대한 추가 정보 .
답변
위의 답변은 디자인 측면 만 고려합니다. SEO 측면에서 나열하고 있습니다.
사용시기 <img />
- 검색 엔진에서 이미지를 색인 해야하는 경우
- 디자인하지 않는 컨텐츠와 관련이있는 경우
- 이미지가 너무 작지 않은 경우 (아이콘 이미지가 아님).
- 추가
alt
하고title
속성을 지정할 수있는 이미지 - 인쇄 매체 CSS를 사용하여 인쇄하려는 웹 페이지의 이미지
CSS를 사용하는 경우 background-image
- 디자인에 순수하게 사용 된 이미지.
- 내용과 관련이 없습니다.
- CSS3로 재생할 수있는 작은 이미지.
- 이미지 반복 (블로그 작성자 아이콘에서는 날짜 아이콘이 각 기사 등에 대해 반복됩니다).
이러한 이유로 인해 사용할 것입니다. 이미지 검색 엔진 최적화의 모범 사례입니다.
답변
브라우저가 항상 기본적으로 배경 이미지를 인쇄하도록 설정되어있는 것은 아닙니다. 사람들이 귀하의 페이지를 인쇄하게하려면 🙂
답변
외부 파일에 CSS가 있으면 사이트 전체에서 자주 사용되는 이미지 (예 : 헤더 이미지)를 배경 이미지로 표시하는 것이 편리합니다. 나중에 이미지를 변경할 수 있기 때문입니다.
예를 들어, 다음 HTML이 있다고 가정하십시오.
<div id="headerImage"></div>
… 그리고 CSS :
#headerImage {
width: 200px;
height: 100px;
background: url(Images/headerImage.png) no-repeat;
}
며칠 후 이미지의 위치를 변경합니다. CSS를 업데이트하기 만하면됩니다.
#headerImage {
width: 200px;
height: 100px;
background: url(../resources/images/headerImage.png) no-repeat;
}
그렇지 않으면 프로세스를 자동화하기 위해 서버 측 스크립팅 언어 나 CMS 를 사용하지 않는다고 가정 할 때 모든 HTML 파일에서 src
적절한 <img>
태그 의 속성 을 업데이트해야 합니다 .
또한 배경 이미지는 사용자가 이미지를 저장할 수 없도록하려는 경우에 유용합니다 (이 작업을 수행 할 필요는 없었지만).
답변
sanchothefat의 답변 과 동일 하지만 다른 측면에서. 나는 항상 나 자신에게 묻습니다 : 웹 사이트에서 스타일 시트를 완전히 제거하려면 나머지 요소 는 내용 에만 속합니까? 그렇다면 나는 일을 잘했다.