트렌드

CSS와 황금비율, CSS로 표현하는 한계는?

이 글은 최근 dvncan.com 운영자인 Duncan Graham의 글로 <em>으로 정의된 크기와 <CSS>형태를 적용, 여러 가지 도형을 만들 수 있는 가능성을 제시하는 내용을 담고 있습니다. 디자인 계통에 계신 분들에게 참고가 되길 바라겠습니다. 

몇 주 전, 브루클린에 있을 때 운 좋게도 스콧 캘럼(Scott Kellum)과 함께 점심을 같이 한 적이 있습니다. 그는 최근 ’em’으로 정의된 크기와 ‘CSS’ 형태를 적용하여 여러 가지 도형들을 만드는 것에 재미를 붙이고 있다고 말하더군요. 나 역시 이 아이디어에 흥미를 느껴, 황금 비율(1.618033988…)과 함께 작업을 해보기 시작했습니다(건축학을 배운 지 4년이 지났지만, 아직도 황금 비율(golden-ratio)에 대한 애착이 있습니다). 

우선 기본 모양을 만드는 것부터 시작하여, 사각형들이 중심으로부터 뻗어 가는 모습을 유지하기 위해 위치와 함께 모양을 약간 비틀어보려고 합니다. 

[CSS Code]

.golden-ratio{
    font-size: 1.618033988749894848204586834em;
    background-color: #F00;
    opacity: .75;
    }

    .golden-ratio.horiz {
    height: 1em;
    width: 1.618033988749894848204586834em;
    }

    .golden-ratio.vert {
    width: 1em;
    height: 1.618033988749894848204586834em;
    }

    .postition-tweak.vert {
    position:relative;
    bottom:1em;
    }

    .postition-tweak.horiz {
    position:relative;
    right:1em;
    }  

 

[HTML Code]

<div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

 

이후에 어디 서나 볼 수 있을 법한 황금 나선형을 만드는 작업을 시작하였습니다. 하지만 얼마 후, 내 CSS에 결함이 있는 것을 발견했습니다. 아무것도 오른쪽으로 정렬되지 않았습니다. (아래 그림)

[CSS Code] 

/* below is the additional css for the curve */
    .golden-ratio.spiral {
    background-color: #09F;
    }

    .spiral.top {
    border-radius: 1.618033988749894848204586834em 1.618033988749894848204586834em 0 0;
    -moz-border-radius: 1.618033988749894848204586834em 1.618033988749894848204586834em 0 0;
    -webkit-border-radius: 1.618033988749894848204586834em 1.618033988749894848204586834em 0 0;
    }

    .spiral.bottom {
    border-radius:  0 0 1.618033988749894848204586834em 1.618033988749894848204586834em;
    -moz-border-radius: 0 0 1.618033988749894848204586834em 1.618033988749894848204586834em;
    -webkit-border-radius: 0 0 1.618033988749894848204586834em 1.618033988749894848204586834em;
    }

    .spiral.right {
    border-radius: 1.618033988749894848204586834em 0 0 1.618033988749894848204586834em;
    -moz-border-radius: 1.618033988749894848204586834em 0 0 1.618033988749894848204586834em;
    -webkit-border-radius: 1.618033988749894848204586834em 0 0 1.618033988749894848204586834em;
    }

    .spiral.left {
    border-radius: 0 1.618033988749894848204586834em 1.618033988749894848204586834em 0;
    -moz-border-radius: 0 1.618033988749894848204586834em 1.618033988749894848204586834em 0;
    -webkit-border-radius: 0 1.618033988749894848204586834em 1.618033988749894848204586834em 0;
    }

 

[HTML Code] (위와 동일하지만, 위치 클래스 추가)

<div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

 

제대로 된 실마리를 찾지 못하고 CSS를 하나씩 쪼개보면서 확인한 결과, 해답이 매우 간단하다는 사실을 깨달았습니다. 황금 나선형의 호는 사실 타원 형임에도 불구하고 나는 같은 반지름 비율을 사용하고 있었던 것입니다. 

 

(수정 전 : 

border-radius: 1.618033988749894848204586834em 1.618033988749894848204586834em 0 0; 반지름 둥글기 1:1 비율)

(수정 후 : 

border-radius: 12em 8em 0 0;  반지름 둥글기 3:2비율)

 

[CSS Code]

.golden-ratio.spiral {
    background-color: #0A2;
    }

    .spiral.top {
    border-radius: 12em 8em 0 0;
    -moz-border-radius: 12em 8em 0 0;
    -webkit-border-radius: 12em 8em 0 0;
    }

    .spiral.bottom {
    border-radius:  0 0 12em 8em;
    -moz-border-radius: 0 0 12em 8em;
    -webkit-border-radius: 0 0 12em 8em;
    }

    .spiral.right {
    border-radius: 8em 0 0 12em;
    -moz-border-radius: 8em 0 0 12em;
    -webkit-border-radius: 8em 0 0 12em;
    }

    .spiral.left {
    border-radius: 0 12em 8em 0;
    -moz-border-radius: 0 12em 8em 0;
    -webkit-border-radius: 0 12em 8em 0;
    }

 

[HTML Code] (클래스만 변경)

     <div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

 

완성에 한 걸음 더 가까이 왔습니다! 다음 단계는 기본적인 상호작용입니다. 이 형태를 확대하거나 축소하기 위해 아래 나선형의 시작 부분을 위아래로 스크롤 해보세요. 

 

상당히 기본적입니다(해당 페이지를 보면 가장 중앙의 도형만 보임). 하지만 이것은 시작에 불과합니다. 이제 만델브로 집합에 태클을 걸 때입니다! (주: 베누아 만델브로 : 프랙탈 이론의 창시자/  만델브로 집합 : 복소수를 이용한 예술, 프랙탈 그래픽의 대표 )

 

원문 링크 : CSS 그리고 황금비율(golden-ratio)

번역 : Staff Editor : Young Im Kim | www.facebook.com/youngim.kim

 

※ 본 기사는 진 ‘디자인로그(designlog.org)‘ 독자와 페이스북 ‘Design‘ 페이지 팬들이 디자인 인사이트를 넓히는데 도움을 드리기 위해 해외 디자인 트렌드 매거진과 블로그 기사를 바탕으로 세 분의 Staff Editor가 한국어로 번역하여 제공되고 있습니다.

콘텐츠의 모든 저작권은 원문 링크의 해당 블로그에 있음을 밝혀 둡니다.

기자/ “스타트업을 하는 사람은 거울을 보는 것이 아니라 창을 봐야 한다”는 의미 깊은 말씀을 전해 들은 적이 있습니다. 가슴 깊이 전해진 울림으로 아직 여운이 가시지 않았습니다. 스타트업과 관련된 모든 분께 창밖 세상의 생동감 넘치는 현장의 소식을 빠르고 알차게 전하도록 최선을 다하겠습니다.

Hyunwook Kim is a Bureau Chief Gyeongnam branch of Platum.
He have gained experience in design and marketing area and very interested in the rapidly growing global startup.
He trying to vividly convey the trend of design, brand value and marketing strategy of startups.

댓글

Leave a Comment


관련 기사

글로벌 이벤트

“뉴메이커의 시대가 온다 …” ‘메이커 발전 포럼’ 선전에서 개최

Workinsight 이벤트 인터뷰

[마케팅人사이트] 김민석 스마트스터디 대표, “초기 마케팅? 포털 사이트에 댓글 달기”

트렌드

애플의 역사를 러시아에서? 모스크바 애플 박물관 투어

Business 스타트업 투자

벤처캐피탈을 만나기전 스타트업이 체크할 사항 5가지