웹 디자인에서 요소의 투명도를 조절하는 것은 시각적 계층 구조를 만들고 세련된 사용자 경험을 제공하는 핵심 기술입니다. 이 글에서는 Firefox, Google Chrome, Safari, Opera 등 모든 최신 웹 브라우저에서 CSS opacity 속성을 활용해 이미지나 요소를 반투명하게 만드는 방법을 알아보겠습니다.
opacity 속성이란?
opacity 속성은 요소 전체의 불투명도(투명도)를 설정하는 CSS 속성입니다. 값은 0.0(완전히 투명)부터 1.0(완전히 불투명) 사이의 숫자로 지정합니다. 예를 들어 0.3으로 설정하면 요소가 30%만 보이고 나머지는 배경이 비쳐 보이게 됩니다.
모든 최신 브라우저에서 투명도가 정상적으로 작동하도록 하려면 CSS 클래스에 다음과 같이 opacity 속성을 선언하면 됩니다.
.transparent {
opacity: 0.3;
}
브라우저 호환 opacity 적용 예제 코드
아래는 실제 HTML 문서에 opacity를 적용하는 완전한 예제입니다. 같은 이미지 두 개를 나란히 배치하고, 하나에는 .transparent 클래스를 적용해 차이를 한눈에 확인할 수 있도록 구성했습니다.
<!DOCTYPE html>
<html>
<head>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
img {
width: 270px;
height: 200px;
}
.transparent {
opacity: 0.3;
}
</style>
</head>
<body>
<h1>Opacity example</h1>
<img src="https://i.picsum.photos/id/505/800/800.jpg">
<img class="transparent" src="https://i.picsum.photos/id/505/800/800.jpg">
</body>
</html>
실행 결과
위 코드를 실행하면 왼쪽에는 원본 이미지가 그대로 표시되고, 오른쪽에는 opacity 값이 0.3으로 적용되어 상당히 흐릿하게 보이는 이미지가 나타납니다.

추가 팁: hover 효과와 함께 활용하기
opacity는 마우스 오버(hover) 효과와 조합하면 더욱 유용합니다. 예를 들어 기본 상태에서는 살짝 투명하게 유지하고, 마우스를 올렸을 때 완전히 선명해지도록 만들 수 있습니다.
img {
opacity: 0.5;
transition: opacity 0.3s ease;
}
img:hover {
opacity: 1;
}
이처럼 transition 속성을 함께 사용하면 부드러운 애니메이션 효과까지 얻을 수 있어, 갤러리나 카드형 UI에서 널리 활용됩니다.
정리
- opacity 값은 0.0(완전 투명) ~ 1.0(완전 불투명) 범위로 지정합니다.
- Firefox, Chrome, Safari, Opera 등 모든 최신 브라우저에서 별도의 접두사 없이 동작합니다.
- transition과 결합하면 자연스러운 인터랙션 효과를 구현할 수 있습니다.