CSS(Cascading Style Sheets)는 1990년대 후반에 처음 등장한 이후 웹 디자인의 알려지지 않은 영웅이었습니다. 단순하고 지루한 HTML을 시각적으로 놀라운 대화형 원더랜드로 바꾸는 웹 세계의 마법의 옷장이라고 생각하십시오. 이 기사에서 우리는 CSS의 미약한 시작부터 모든 웹 개발자 툴킷의 궁극적인 마법사로서의 현재 역할에 이르기까지 CSS의 매혹적인 진화에 대해 자세히 알아봅니다.
우리의 이야기는 Håkon Wium Lie라는 선구자가 웹페이지 스타일링을 위한 새로운 언어를 제안한 1994년에 시작됩니다. 1996년에 W3C(World Wide Web Consortium)가 최초의 공식 CSS 1.0 사양을 발표했습니다. 그 당시 CSS는 책에 몇 가지 주문만 있는 아기 마법사 같았습니다.
색상 및 배경: 기본 텍스트 및 배경 색상 - 아직 무지개가 없습니다!
글꼴 마법: 크기, 스타일, 계열 선택과 같은 글꼴에 대한 제한적인 제어.
텍스트 요령: 간단한 텍스트 정렬 및 장식.
간격 마법: 여백, 패딩 및 테두리가 있는 기본 레이아웃 제어.
그러다가 1998년에 CSS 2.0이 나왔고 우리의 작은 마법사는 몇 가지 새로운 요령을 배웠습니다:
요소 위치 지정: 정적, 상대, 절대 및 고정 위치 지정.
Z-색인: 레이어 케이크처럼 요소를 서로 쌓습니다.
미디어 유형: 스크린, 프린터 등에 대한 다양한 스타일 규칙.
고급 선택기: :마우스를 가리키면 더욱 멋진 선택기가 추가됩니다.
그러나 일관되지 않은 브라우저 지원이라는 어두운 면도 있었습니다. 개발자들은 다양한 브라우저에서 작동하도록 하기 위해 기발한 "해킹"과 주문을 사용해야 하는 경우가 많았으며, 이로 인해 CSS 2.0은 부러진 지팡이로 주문을 거는 것처럼 느껴졌습니다!
'브라우저 전쟁'으로 알려진 2000년대 초반에 오신 것을 환영합니다. Internet Explorer와 Netscape Navigator 사이의 장대한 전투처럼 각각 CSS에 대한 자신만의 해석으로 서로를 능가하려고 노력하는 것처럼 상상해 보십시오. 결과는? 일관되지 않은 행동과 좌절한 개발자.
2011년에는 CSS 2.0의 버그와 모호함을 수정하기 위한 간단한 업데이트인 CSS 2.1이 출시되었습니다. 장면에 좀 더 안정감을 주었지만 실제 마법은 여전히 배경에서 끓어오르고 있었습니다...
드디어 마법이 도착했습니다! 2000년대 후반부터 CSS3가 출시되기 시작했지만 이번에는 모듈식이었습니다. CSS3는 단지 하나의 주문서가 아니었습니다. 레이아웃(Flexbox, Grid)부터 애니메이션 등에 이르기까지 모든 것을 위한 별도의 모듈이 포함된 전체 라이브러리였습니다. 이 새로운 접근 방식을 통해 브라우저는 기능을 더 빠르게 채택할 수 있게 되었고, 갑자기 웹 개발자는 매우 강력한 마법으로 무장하게 되었습니다!
Flexbox(Flexible Box Layout): Flexbox는 복잡한 레이아웃을 쉽게 생성할 수 있게 해주는 1차원 레이아웃 마법사와 같습니다. 컨테이너에 있는 항목을 정렬하거나 배포해야 합니까? Flexbox는 귀하의 콘텐츠가 아무리 예측 불가능하더라도 귀하를 보호해 드립니다!
CSS 그리드: 그리드를 레이아웃의 대가라고 생각하세요. 2차원 제어 기능을 제공하므로 개발자는 성가신 플로트나 위치 지정 해킹에 의존하지 않고도 복잡하고 반응성이 뛰어난 그리드를 만들 수 있습니다. 그리드 템플릿 열 및 그리드 템플릿 행과 같은 도구를 사용하면 레이아웃 세계의 마스터가 됩니다.
스마트폰과 태블릿이 등장하면서 웹사이트는 그 어느 때보다 적응력이 높아져야 했습니다. 미디어 쿼리를 입력하세요. 너비, 높이, 해상도와 같은 장치 특성에 따라 사이트의 모양을 변경할 수 있는 주문입니다. 여기서 "모바일 우선" 접근 방식이 등장했습니다. 먼저 작은 화면에 맞게 디자인한 다음 더 큰 화면에 맞게 개선하는 것입니다. 결과는? 장갑처럼 모든 장치에 맞는 웹!
CSS3를 통해 웹은 생명력을 얻었습니다! 개발자는 JavaScript가 필요 없이 CSS에서 직접 부드럽고 시각적으로 매력적인 애니메이션을 만들 수 있습니다. 다음과 같은 효과를 상상해보세요:
전환: 전환 속성, 전환 기간 등을 사용하여 상태 변경(호버 효과 등)에 의해 트리거되는 간단한 애니메이션입니다.
애니메이션: @keyframes를 사용하여 다단계 애니메이션을 만드는 더 복잡한 시퀀스.
갑자기 웹사이트가 춤추고, 점프하고, 반응할 수 있게 되어 사용자를 사로잡고 웹을 훨씬 더 생동감 넘치는 곳으로 만들 수 있었습니다!
사용자 정의 속성이라고도 알려진 CSS 변수는 스타일을 동적이고 사용자 정의할 수 있게 만들었습니다. 몇 초 만에 사이트 테마를 변경하고 싶으십니까? 마법의 재료를 한 번 정의하고 스타일시트 전체에서 사용하세요. 예를 들어:
:root { --primary-color: #3498db; --secondary-color: #2ecc71; } body { background-color: var(--primary-color); color: var(--secondary-color); }
이제 값 하나만 변경하면 전체 웹사이트가 마술처럼 변합니다!
CSS3은 또한 현실을 구부리고 비틀기 위한 도구인 변환과 필터를 제공했습니다.
변형: 회전, 크기 조절, 이동, 기울이기와 같은 효과를 적용하여 놀라운 시각 효과를 만들어 보세요.
필터: 흐림, 회색조 또는 그림자와 같은 동적 효과를 추가하여 외부 그래픽 소프트웨어에 의존하지 않고도 요소를 돋보이게 만듭니다.
이제 개발자가 브라우저의 CSS 렌더링 엔진에 더 깊이 액세스할 수 있게 해주는 새로운 API 세트인 CSS Houdini를 만나보세요. 유형 검사, 새로운 레이아웃 알고리즘 등을 갖춘 사용자 정의 속성 등 자신만의 CSS 마법 주문을 작성한다고 상상해 보십시오! 아직 초기 단계이지만 Houdini는 모든 것을 바꿀 수 있는 잠재력을 가지고 있습니다.
우리 마법의 언어의 다음 단계는 무엇입니까? 지팡이를 꽉 잡으세요. 앞으로 더 많은 기능이 제공될 예정입니다:
컨테이너 쿼리: 뷰포트뿐만 아니라 컨테이너 크기를 기반으로 하는 스타일입니다.
하위 그리드: 더욱 정확한 제어를 위해 향상된 CSS 그리드 기능.
CSS 중첩: Sass 및 기타 전처리기의 친숙한 기능이 기본 CSS에 제공됩니다.
새로운 색상 기능: 최신 색상 공간 및 color-mix()와 같은 기능을 지원합니다.
CSS는 더욱 강력해져서 웹 디자인의 한계를 뛰어넘을 것입니다. 그러니 지팡이(또는 키보드)를 잡고 웹 마술을 만들어 보세요!
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3