기본 콘텐츠로 건너뛰기

Part03 CSS - 02

CSS / 속성 - 배경 

background - 요소의 배경을 설정

        background-color            배경 색상                                 transparent

        background-image           하나 이상의 배경 이미지             none

        background-repeat           배경 이미지의 반복                    repeat

        background-position        배경 이미지의 위치                     0    0

        background-attachment    배경 이미지의 스크롤 여부(특성)    scroll

background: 색상 이미지경로 반복 위치 스크롤특성;

.box1{
  background: red url("../img/image.jpg") no-repeat left top scroll;
}

background-color - 요소의 배경 색상을 지정

        transparent        투명        transparent

background-image - 요소의 배경에 하나 이상의 이미지를 삽입

        none            이미지 없음        none

        url("경로")     이미지 경로(URL)

background-image: url("경로");

.box{
  background-image: url("../img/image.jpg");
}
.box1{
/* 개별속성 */
  background-image: url("../img/image1.jpg"),
  url("../img/image2.jpg"),
  url("../img/image3.jpg");
}
.box2{
/* 단축속성 */
  background: url("../img/image1.jpg") no-repeat,
  url("../img/image2.jpg") no-repeat 100px 50px,
  url("../img/image3.jpg") repeat-x;
}

background-repeat - 배경 이미지의 반복을 설정

        repeat            배경 이미지를 수직, 수평으로 반복        repeat

        repeat-x         배경 이미지를 수평으로 반복

        repeat-y         배경 이미지를 수직으로 반복

        no-repeat       반복없음

background-position - 배경 이미지의 위치를 설정

        %        왼쪽 상단 모서리는 0% 0%, 오른쪽 하단 모서리는 100% 100%        0% 0%

        방향    방향을 입력하여 위치 설정 top, bottom, left, right, center 

        단위    px, em, cm등 단위로 지정

background-position : 방향1(X축) 방향2(Y축)

background-attachment - 요소가 스크롤될 때 배경 이미지의 스크롤 여부(특성) 설정

        scroll             배경 이미지가 요소를 따라서 같이 스크롤 됨            scroll

        fixed             배경 이미지가 뷰포트(Viewport)에 고정되어, 요소와 같이 스크롤되지 않음

        local            요소 내 스크롤 시 배경 이미지가 같이 스크롤 됨

background-size - 배경 이미지의 크기를 지정

        auto        배경 이미지가 원래의 크기로 표시됨                                auto

        단위        -px, em, %등 단위로 지정

                      -width height 형태로 입력 가능(E.g. 120px 370px)

                      -width만 입력하면 비율에 맞게 지정됨(E.g. 120px)

        cover       -배경 이미지의 크기 비율을 유지하며, 요소의 더 넓은 너비에 맞춰짐

                      -이미지가 잘릴 수 있음

        contain    -배경 이미지의 크기 비율을 유지하며, 요소의 더 짧은 너비에 맞춰짐

                      -이미지가 잘리지 않음  

CSS / 속성 - 전환 & 변환

Transitions - CSS 속성의 시작과 끝을 지정(전환 효과)하여 중간 값을 매니메이션

        transition-property            전환 효과를 사용할 속성 이름            all

        transition-duration            전환 효과의 지속시간 설정                0s

        transition-timing-function   타이밍 함수 지정                            ease

        transition-delay                전환 효과의 대기시간 설정                0s

transition-timing-function : 타이밍 함수(애니메이션 전환 효과를 계산하는 방법)지정

        값                            의미                    기본값            Cubic Bezier값        

        ease                         빠르게-느리게       ease               cubic-bezier(.25, .1, .25, 1)

        linear                       일정하게                                   cubic-bezier(0, 0, 1, 1)

        ease-in                     느리게-빠르게                            cubic-bezier(.42, 0, 1, 1)

        ease-out                   빠르게-느리게                            cubic-bezier(0, 0, .58, 1)

        ease-in-out               느리게-빠르게-느리게                   cubic-bezier(.42, 0, .58, 1)

        cubic-bezier(n,n,n,n)    자신만의 값을 정의(0~1)               

        steps(n)                    n번 분할된 애니메이션

transform - 요소의 변환 효과(변형)를 지정

transform: 변환함수1 변환함수2 변환함수3...;

transform: 원근법 이동 크기 회전 기울임;

.box{
  transform: rotate(20deg) translate(10px, 0);
}

2D 변환 함수

translate(x, y)                이동(X축, Y축)                단위

translateX(x)                 이동(X축)                      단위

translateY(y)                 이동(Y축)                      단위

scale(x, y)                    크기(X축, Y축)                없음

scaleX(x)                     크기(X축)                      없음

scaleY(y)                     크기(Y축)                      없음

rotate(degree)              회전(각도)                     deg

skew(x-deg, y-deg)        기울임(X축, Y축)             deg

skewX(x-deg)               기울임(X축)                   deg

skewY(y-deg)               기울임(Y축)                   deg

matrix(n, n, n, n, n, n)    2차원 변환 효과             없음

3D 변환 함수

translate3d(x, y, z)                                        이동(X축, Y축, Z축)                단위

translateZ(z)                                                이동(Z축)                      단위

scale3d(x, y, z)                                             크기(X축, Y축, Z축)                없음

scaleZ(z)                                                     크기(Z축)                      없음

rotate3d(x, y, z, a)                                        회전(X벡터, Y벡터, Z벡터, 각도)                     deg

rotateX(x)                                                    회전(X축)                     deg

rotateY(y)                                                    회전(Y축)                     deg

rotateZ(z)                                                    회전(Z축)                     deg

perspective(n)                                             원근법(거리)                 단위

matrix(n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n)    2차원 변환 효과             없음

transform 변환 속성

transform-origin                요소 변환의 기준점을 설정

transform-style                  3D 변환 요소의 자식 요소도 3D 변환을 사용할지 설정

perspective                       하위 요소를 관찰하는 원근 거리를 설정

perspective-origin              원근 거리의 기준점을 설정

backface-visibility               3D 변환으로 회전된 요소의 뒷면 숨김을 설정

transform-origin : 요소 변환의 기준점을 설정

        X축         left, right, center, %, 단위            50%

        Y축         top, bottom, center, %, 단위         50%

        Z축         단위                                        0

transform-style : 3D 변환 요소의 자식 요소도 3D 변환을 사용할지 설정

        flat                자식 요소의 3D 변환을 사용하지 않음        flat

        preserve-3d    자식 요소의 3D 변환을 사용함

perspective - 하위 요소를 관찰하는 원근 거리를 설정

        단위            px, em, cm등 단위로 지정

perspective속성과 함수의 차이점

        perspective                    관찰 대상의 부모요소        perspective-origin

        transform: perspective()    관찰 대상                       transform-origin

perspective-origin - 원근 거리의 기준점을 설정

        X축        left, right, center, %, 단위            50%

        Y축        top, bottom, center, %, 단위        50%

backface-visibility - 3D 변환으로 회전된 요소의 뒷면 숨김을 설정

        visible            뒷면 숨기지 않음            visible

        hidden            뒷면 숨김

matrix(a, b, c, d, e, f) - 요소의 2차원 변환(transforms)효과를 지정 slace(), skew(), translate()그리고 rotate()를 지정

animation - 요소에 애니메이션을 설정/제어

        animation-name                @keyframes규칙의 이름을 지정          none

        animation-duration             애니메이션의 지속 시간 설정             0s

        animation-timing-function    타이밍 함수 지정                            ease

        animation-delay                 애니메이션의 대기 시간 설정             0s      

        animation-iteration-count     애니메이션의 반복 횟수 설정             1

        animation-direction             애니메이션의 반복 방향 설정             normal

        animation-fill-mode             애니메이션의 전후 상태(위치) 설정     none

        animation-play-state            애니메이션의 재생과 정지 설정         running       

animation : 애니메이션이름 지속시간 [타이밍함수 대기시간 반복횟수 반복상향 전후상태 재생/정지];

.box{
  width: 100px;
  height: 100px;
  background: tomato;
  animation: hello 2s linear infinite both;
}

@keyframes hello{
  0% {width: 200px; }
  100% {width: 50px; }
}

@keyframes - 2개 이상의 애니메이션 중간 상태(프레임)을 지정

@keyframes 애니메이션이름{

    0% { 속성: 값; }

    50% { 속성: 값; }

    100% { 속성: 값; }

}

@keyframes move-box{
  0% { width: 100px; }
  100% { top: 200px; }
}

CSS / 속성 - 애니메이션 & 다단

animation-name : @keyframes규칙(애니메이션 프레임)의 이름을 지정

        none                    애니메이션을 지정하지 않음

        @keyframes이름     이름이 일치하는 @keyframes규칙의 애니메이션을 적용

animation-duration : 애니메이션의 지속 시간 설정

        시간             지속 시간을 설정        0s

animation-timing-function - 타이밍 함수(애니메이션 효과를 계산하는 방법) 지정

                                    의미                    기본값            Cubic Bezier값        

        ease                         빠르게-느리게       ease               cubic-bezier(.25, .1, .25, 1)

        linear                       일정하게                                   cubic-bezier(0, 0, 1, 1)

        ease-in                     느리게-빠르게                            cubic-bezier(.42, 0, 1, 1)

        ease-out                   빠르게-느리게                            cubic-bezier(0, 0, .58, 1)

        ease-in-out               느리게-빠르게-느리게                   cubic-bezier(.42, 0, .58, 1)

        cubic-bezier(n,n,n,n)    자신만의 값을 정의(0~1)               

        steps(n)                    n번 분할된 애니메이션

animation-delay - 애니메이션의 대기 시간 설정

        시간        대기 시간을 설정        0s

animation-iteration-count - 애니메이션의 반복 횟수를 설정

        숫자         반복 횟수를 설정            1

        infinite      무한 반복

animation-direction - 애니메이션의 반복 방향을 설정

        normal                정방향만 반복            normal

        reverse                역방향만 반복

        alternate              정방향에서 역방향으로 반복(왕복)

        alternate-reverse    역방향에서 정방향으로 반복(왕복)

animation-fill-mode - 애니메이션의 전후 상태(위치)를 설정

        none        기존 위치에서 시작 -> 애니메이션 시작 위치로 이동 -> 동작 -> 기존 위치에서 끝            none

        forwards    기존 위치에서 시작 -> 애니메이션 시작 위치로 이동 -> 동작 -> 애니메이션 끝 위치에서 끝

        backwards  애니메이션 시작 위치에서 시작 -> 동작 -> 기존 위치에서 끝

        both          애니메이션 시작 위치에서 시작 -> 동작 -> 애니메이션 끝 위치에서 끝





animation-play-state : 애니메이션의 재생과 정지를 설정
            running        애니메이션을 동작
            paused        애니메이션 동작을 정지
Multi-Columns : 일반 블록 레이아웃을 확장하여 여러 텍스트 다단으로 쉽게 정리하며, 가독성 확보
columns - 다단을 정의
            auto                       브라우저가 단의 너비와 개수를 설정
            column-width        단의 최적 너비를 설정, 각 단이 줄어들 수 있는 최적 너비(최소 너비)를 설정하며, 요소의 너비가 가변하여 하나의 단이 최적 너비보다 줄어들 경우 단의 개수가 조정됨
                        auto            브라우저가 단의 너비를 설정
                        단위            px, em, cm등 단위로 지정
            column-count        단의 개수를 설정
                        auto            브라우저가 단의 개수를 설정
                        숫자            단의 개수를 설정
            columns: 너비 개수;
column-gap - 단과 단 사이의 간격 설정
            normal            브라우저가 단과 단 사이의 간격을 설정(1em)
            단위                 px, em, cm등 단위로 지정
column-rule - 단과 단 사이의 간격 중간에 (구분)선을 지정, border속성과 매우 비슷
            column-width            선의 두께를 지정
            column-style              선의 종류를 지정
            column-color              선의 색상을 지정            요소의 글자색과 동일
            column-rule: 두께 종류 색상;

CSS / 속성 - 플랙스

Flexible box : 요소의 크기가 불분명하거나 동적인 경우에도, 각 요소를 정렬할 수 있는 효율적인 방법을 제공, Container(Items를 감싸는 부모 요소이며, 각 Item을 정렬하기 위해서는 필수)와 Items
Flex Container 
        display                    Flex Container를 정의
                                     flex                    Block 특성
                                     inline-flex            Inline 특성
                   
        flex-flow                  flex-direction와 flex-wrap의 단축 속성
        flex-direction           Flex Items의 주 축(main-axis) 설정
                                         row                        수평축(왼쪽에서 오른쪽으로)
                                         row-reverse          row의 반대 수평축(오른쪽에서 왼쪽으로)
                                         column                  수직축(위에서 아래)
                                         column-reverse     column의 반대 수직축(아래에서 위로)
        flex-wrap                 Flex Items의 여러 줄 묶음(줄 바꿈) 설정
                                        nowrap                        모든 Items를 여러 줄로 묶지 않음
                                        wrap                            Items를 여러 줄로 묶음
                                        wrap-reverse              Items를 wrap의 역 방향으로 여러 줄로 묶음
        justify-content          주 축(main-axis)의 정렬 방법을 설정
        align-content           교차 축(cross-axis)의 정렬 방법을 설정(2줄 이상)
        align-items              교차 축(cross-axis)에서 items의 정렬 방법을 설정(1줄)
주축(main-axis)과 교차축(cross-axis)  : row는 Items를 수평축으로 표시하므로 주 축은 수평 교차 축은 수직 column은 주축은 수직 교차 축은 수평
시작점(flex-start)과 끝점(flex-end) : 주 축이나 교차 축의 시작하는 지점과 끝나는 지점을 지칭하는데 축의 옵션에 따라 달라짐
교차 축의 시작점(cross-start)과 끝점(cross-end) : 축의 옵션에 따라 바뀌지 않음
justify-content : 주 축의 정렬 방법을 설정
            flex-start                        Items를 시작점(flex-start)으로 정렬
            flex-end                         Items를 끝점(flex-end)으로 정렬
            center                            Items를 가운데 정렬
            space-between             시작 Item은 시작점에, 마지막 Item은 끝점에 정렬되고 나머지 Items는 사이에 고르게 정렬됨
            space-around                Items를 균등한 여백을 포함하여 정렬
align-content : 교차 축의 정렬 방법, flex-wrap 속성을 통해 Items가 여러줄(2줄 이상)이고 여백이 있을 경우만 사용함(한줄일 경우 align-items를 활용)
            stretch                            Container의 교차 축을 채우기 위해 Items를 늘림
            flex-start                        Items를 시작점으로 정렬(전체적으로 위쪽 정렬)
            flex-end                        Items를 끝점으로 정렬(전체적으로 아래쪽 정렬)
            center                            Items를 가운데 정렬
            space-between             시작 Item은 시작점에, 마지막 Item은 끝점에 정렬되고 나머지 Items는 사이에 고르게 정렬됨
            space-around                Items를 균등한 여백을 포함하여 정렬
align-items : 교차 축에서 Items의 정렬 방법을 설정, Items가 한줄일 경우 많이 사용, 주의할 점은 Items가 flex-wrap을 통해 여러 줄일 경우에는 align-content 속성이 우선이므로 align-items를 사용 하려면align0content 속성을 기본값(stretch)으로 설정해야 함 
            stretch                    Container의 교차 축을 채우기 위해 Items를 늘림
            flex-start                Items를 각 줄의 시작점(flex-start)으로 정렬
            flex-end                 Items를 각 줄의 끝점(flex-end)으로 정렬
            center                    Items를 가운데 정렬
            baseline                 Items를 문자 기준선에 정렬
Flex Items
            order                    Flex Item의 순서를 설정, 숫자를 지정하고 숫자가 클수록 순서가 밀림, 음수가 허용
            flex                       flex-grow, flex-shrink, flex-basis의 단축 속성으로 쓰는데 flex-basis를 비워두면 auto가 아닌 0이 들어감 꼭 auto로 넣어야함
                                        

            flex-grow              Flex Item의 증가 너비 비율을 설정, Item이 가변 너비가 아니거나, 값이 0일 경우 효과가 없음
                                         Item이 3개이고 증가 너비가 각각 1, 2, 1 이라면 첫번째 Item은 총너비의 25%(1/4), 두번째는 50%(2/4), 세 번째는 25%(1/4)을 가지게 됨
                   /*이렇게 하면 item1은 가변적으로 작동 item2는 100px고정으로 됨*/
                   .item1{
                       flex-grow: 1;
                   }
                   .item2{
                       width : 100px;
                   }
            flex-shrink             Flex Item의 감소 너비 비율을 설정, Item이 가변 너비가 아니거나, 값이 0일 경우 효과가 없음


            flex-basis              Flex Item의 (공간 배분 전) 기본 너비 설정, 값이 auto일 경우 width, height등의 속성으로 Item의 너비를 설정할 수 있지만 단위 값이 주어질 경우 설정할 수 없음


            align-self               교차 축(cross-axis)에서 Item의 정렬 방법을 설정, 이 속성은 align-items 속성보다 우선이므로 필요에 의해 일부  Item만 정렬 방법을 변경하려고 하면 align-self를 사용하면 됨













   























댓글

이 블로그의 인기 게시물

mac 맥 맥북 Brew 완전 삭제

맥북에서 Brew 초기화 Brew를 써서 h2를 쓰려고 하는데 brew install h2가 안되서 이리 저리 알아보다가 완전 삭제 후 다시 설치 하니까 되서 그 방법을 남겨놈 1. 터미널에 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)" 입력후 y랑 뭐 비번.. 2. /usr/local 폴더에서 Homebrew 폴더 삭제 rm -rf Homebrew/ 권한설정으로 잘.....삭제하고 3. 다시 설치 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 좀 오래걸리니까 기다려야한다는걸 배움... 출처.... https://discourse.brew.sh/t/error-no-formulae-found-in-taps/8331/9

메이븐으로 라이브러리 인식

 간혹 퍼블릭 jar가 아닌 파일이 있는데 그럴때 쓰면 될듯 <dependency> <groupId> SimpleCryptLib </groupId> <artifactId> SimpleCryptLib </artifactId> <version> 1.1.0 </version> <scope> system </scope> <systemPath> ${basedir}/src/main/webapp/WEB-INF/lib/SimpleCryptLib-1.1.0.jar </systemPath> </dependency> version, scope, systemPath는 꼭 작성해야 한다 groupId, artifactId, version은 암거나 해도 되는거 같음 최근(2021.05.04)스프링 부트    < dependency > < groupId > NiceID </ groupId > < artifactId > NiceID </ artifactId > < version > 1.0 </ version > < scope > system </ scope > < systemPath > ${basedir}/src/main/resources/lib/NiceID.jar </ systemPath > </ dependency > 이걸 추가해주는것도 필요할지도..?? < build > < plugins > < plugin > < groupId > org.springframework.boot </ groupId > < artifactId > spring-bo...

ORA-28000 계정이 잠금되었습니다 계정 잠길때

오라클 계정이 잠길때 해제방법 증상 t he account is locked 오류 발생 원인 Oracle 에서 t he account is locked  에러가 나는 원인은 ● 잘못된 패스워드로 설정횟수만큼 접속 시도시 Lock. ●  30일동안(Default) 해당 계정으로 로그인을 하지 않았을 경우 Lock. 등이 있다. 해결방법 command창에서 * 로컬일경우, sqlplus "/as sysdba"  또는  sqlplus /nolog  conn /as sysdba  * 로컬이 아닐 경우, sqlplus /nolog conn sys/password@<sid> 이름/패스워드@sid로 입력 로 접속 후 SELECT username, account_status, lock_date FROM dba_users; 으로 Lock이 된 사용자를 확인한 후 LOCKED<TIMED> 라고 되있으면, 패스워드 설정횟수 입력 오류로, 아래의 Unlock 명령만, EXPIRED & LOCKED 라고 되있으면, 패스워드 기간만료로, Unlock 후 비밀번호를 지정해줘야 한다. ALTER USER 사용자명 ACCOUNT UNLOCK; 로 Lock된 사용자를 Unl ock 시킨다 방금 말했다시피, 다시 Lock된 사용자 확인했는데,  Open되지 않고 EXPIRED되어 있다면, alter user 사용자명 identified by 바꿀패스워드;  로 패스워드를 변경하거나 또는 SQL*PLUS 를 재시작하여 Lock를 해제한 계정(사용자명/패스워드)로 로그인 하면 패스워드 변경 창이 뜬다. 추가로 패스워드 Lock 횟수 확인하는 방법은 SELECT U....