4.CSS Advanced
Transcription
4.CSS Advanced
CSS Advanced Bok, Jong Soon [email protected] www.javaexpert.co.kr Grouping Selectors To minimize the code, you can group selectors. Nesting Selectors It is possible to apply a style for a selector within a selector. height Sets the height of an element. Property value auto | length | % max--height max Sets the maximum height of an element. Property value none | length | % max--width max Sets the maximum width of an element. Property value none | length | % min--height min Sets the minimum height of an element. Property value length | % min--width min Sets the minimum width of an element. Property value length | % width Sets the width of an element. Property value auto|| length | % auto Hiding an Element visibility : hidden It will still take up the same space as before. Hiding an Element (Cont.) display : none It will not take up any space. CSS Display – Block and Inline Elements A block element is an element that takes up the full width available, and has a line break before and after it. Examples of block elements: <h1>,, <p> <h1> <p>,, <div> An inline element only takes up as much width as necessary, and does not force line breaks. Examples of inline elements: <span>,, <a> <span> Changing How an Element is Displayed The following example displays list items as i nline elements: li { display : inline; } Changing How an Element is Displayed (Cont.) The following example displays span elemen ts as block elements: span {display : block; } CSS Positioning Allow you to position an element. Can also place an element behind another, and specify what should happen when an element's content is too big. There are four different positioning methods. Static Positioning Fixed Positioning Relative Positioning Absolute Positioning Static Positioning HTML elements are positioned static by default.. default A static positioned element is always positioned according to the normal flow of the page. Fixed Positioning An element with fixed position is positioned relative to the browser window. It will not move even if the window is scrolled: Relative Positioning A relative positioned element is positioned relative to its normal position. Absolute Positioning An absolute position element is positioned relative to the first parent element that has a position other than static. Overlapping Elements When elements are positioned outside the normal flow, they can overlap other elements. The z-index property specifies the stack order of an element (which element should be placed in front of, or behind, the others). All CSS Positioning Properties bottom,, left bottom left,, top top,, right Sets the bottom | left | top | right margin edge for a positioned box. auto | length | % All CSS Positioning Properties (Cont.) clip Clips an absolutely positioned element. shape | auto All CSS Positioning Properties (Cont.) overflow Specifies what happens if content overflows an element's box. auto | hidden | scroll | visible All CSS Positioning Properties (Cont.) position Specifies the type of positioning for an element. absolute | fixed | relative | static All CSS Positioning Properties (Cont.) z-index Sets the stack order of an element. number | auto CSS Cursor Specifies the type of cursor to be displayed. url | auto | crosshair | default | pointer | move | e-resize | nene -resize | nw nw-resize | n-resize | se se-resize | sw sw-resize | s-resize | w-resize | text | wait | help 속성 값 crosshair text wait help move e-resize n-resize 결과 CSS Float With CSS float, an element can be pushed to the left or right, allowing other elements to wrap around it. CSS Float (Cont.) clear Specifies which sides of an element where other floating elements are not allowed. left | right | both | none float Specifies whether or not a box should float. left | right | none CSS Horizontal Alignment Align block elements Is an element that takes up the full width available, and has a line break before and after it. Examples of block elements: <h1> <p> <div> CSS Horizontal Alignment (Cont.) Center aligning using the margin property. Block elements can be centercenter-aligned by setting the left and right margins to auto auto.. CSS Horizontal Alignment (Cont.) Left and right aligning using the position property. One method of aligning elements is to use absolute positioning: CSS Horizontal Alignment (Cont.) Left and right aligning using the float property. One method of aligning elements is to use the float property: CSS PseudoPseudo-classes CSS pseudopseudo-classes are used to add special effects to some selectors. Syntax selector : pseudopseudo-class {property:value {property:value} } selector.class : pseudopseudo-class { property : value } CSS PseudoPseudo-classes (Cont.) Anchor PseudoPseudo-classes Links can be displayed in different ways in a CSS--supporting browser. CSS Pseudo--classes and CSS classes Pseudo Can be combined with CSS classes. CSS PseudoPseudo-classes (Cont.) CSS – The :first :first-child pseudo pseudo--class The :first :first-child pseudo pseudo--class matches a specified element that is the first child of another element. CSS PseudoPseudo-classes (Cont.) Match the first <i> element in all <p> elements. CSS PseudoPseudo-classes (Cont.) Match all <i> elements in all first child <p> elements. CSS PseudoPseudo-classes (Cont.) CSS - The :lang Pseudo Pseudo--class. allows you to define special rules for different languages. CSS PseudoPseudo-classes (Cont.) :link :visited Selects all visited links. :active Selects all unvisited links. Selects the active link. :hover Selects links on mouse over. CSS PseudoPseudo-classes (Cont.) :focus :first:first -letter Selects the first letter of every <p> element. :first:first -line Selects the input element which has focus. Selects the first line of every <p> element. :first:first -child Selects every <p> elements that is the first child of its parent. CSS PseudoPseudo-classes (Cont.) :before :after Insert content before every <p> element. Insert content after every <p> element. :lang lang(language) (language) Selects every <p> element with a lang attribute value starting with "it". CSS Navigation Bar Navigation bar = List of links. A navigation bar is basically a list of links, so usi ng the <ul ul> > and <li li> > elements makes perfect sense. CSS Navigation Bar (Cont.) Now let's remove the bullets and the margins and padding from the list. CSS Navigation Bar (Cont.) Vertical navigation bar To build a vertical navigation bar we only need to style the <a> elements. CSS Navigation Bar (Cont.) Horizontal navigation bar There are two ways to create a horizontal naviga tion bar. Using inline or floating list items. Inline List Items CSS Navigation Bar (Cont.) Floating List Items CSS Attribute Selectors Attribute selector CSS Attribute Selectors (Cont.) Attribute and value selector CSS Attribute Selectors (Cont.) Attribute and value selector – multiple values CSS Attribute Selectors (Cont.) Attribute and value selector – multiple values CSS Attribute Selectors (Cont.) Styling Forms The attribute selectors are particularly useful for styling forms without class or id id.. 깔끔한 실선 테이블 만들기 table { border : solid 1px orange ; borderborder -collapse : collapse; } th { border : solid 1px orange ; backgroundbackground -color color:#FFCC66; :#FFCC66; color : white; } td { border : solid 1px orange ; } 레이어의 계층 구조와 레이어 left:0 top:0 right:0 top:0 left:0 bottom :0 right :0 bottom :0 그림 자르기 사용 예 <div id="layer1" style="width:400px; height:600px; position :absolute ; left:100px; top:0px; clip : rect rect(0 (0 300 600 180);"> <img src src="city.jpg" ="city.jpg" width="400" height="600"> </div> Clip : rect rect((a,b,c,d a,b,c,d)) 한영전환 키보드를 통하여 입력을 받을 수 있는 element element에서 에서 만 적용 적용.. 특별히 한영 전환키를 선택하지 않아도 한영전환이 되므로 사용자가 바로 입력이 가능 가능.. 형식 ime-mode: [ inherit | auto | active | inactive | imedisabled ] inherit ( 상속 : 이전에 설정된 값을 상속 ) auto ( 자동 : 현재 설정된 한/영 부분을 따름 ) active ( 동작 : 한글로 동작 ) inactive ( 동작안함 : 영문으로 동작 ) disabled ( 사용안함 : 영문으로 동작 ) 필터 그림과 문자에 필터 적 용하는 법 <태그 style= filter:필터종류 filter:필터종류 (세부속성지정 세부속성지정)> )> 필터의 종류 사진에 특수 효과를 주는 필터 gray invert xray chroma 문자와 그림을 꾸며주는 필 터 filph filpv alpha blur wave 문자에 주로 사용되는 필터 dropshadow shadow glow 필터 dropshadow(color=red,offx dropshadow(color= red,offx=1,offy=1,positive=false); =1,offy=1,positive=false); 그림자에 대한 설정을 지정 지정.. 특정 요소의 내부에 포함되어있는 내용에 적용이 되는 것. 속성값 color : 그림자 색을 지정 합니다 합니다.. offx : 그림자를 해당 객체로 부터 우측으로 표현할 상 대 값을 지정 합니다 합니다.. offy : 그림자를 해당 객체로 부터 아래로 표현할 상대 값을 지정 합니다 합니다.. positive : 그림자와 배경을 반전 할 지를 지정 합니다 합니다.. true : 그래로 사용 false : 반전 glow 특정 요소 내부에 있는 다른 요소들의 색(빛) 번짐을 표현 형식 filter:glow(color= filter:glow (color=값 값, strength=값 strength=값) 속성 color strength 번짐 효과 색을 지정 합니다 합니다.. 요소로 부터 얼마만큼 번짐 효과를 줄지를 pixcel pixcel단위로 단위로 지정 지정.. gray 특정 요소의 컬러값을 흑백 처리합니다 처리합니다.. 실제론 이미지에 가장 많이 사용이 됩니다 됩니다.. 형식 filter:gray; filter:gray ; xray 이미지에 xray 효과를 부여 할 경우에 사용 됩니다 됩니다.. 형식 filter:xray; filter:xray ; blur 지정된 개체의 번짐 효과를 부여 합니다 합니다.. 형식 add 1과 0값을 가지며 번짐의 효과를 지정 합니다 합니다.. direction filter:blur(add= filter:blur (add= 값,direction= 값,strength= ,strength=값 값) 번짐의 방향을 360 360도 도 각도로 지정 합니다 합니다.. strength 그림자의 길이를 지정 합니다 합니다.. wave 지정된 개체에 웨이브 효과를 줍니다 줍니다.. 형식 filter:wave filter:wave(add= (add=값 값,freq= ,freq=값 값,lightstrength lightstrength= = 값,phase= ,phase=값 값,strength= ,strength=값 값) 합니다.. boolean boolean값으로 값으로 0과 1값을 add : 물결의 색을 어둡게 또는 밝게 합니다 갖습니다. 갖습니다. 합니다.. freq : 물결의 수를 지정 합니다 지정합니다.(1~100) .(1~100) lightstrength : 물결의 진하기를 지정합니다 합니다.(1~100) .(1~100) phase : 굴곡의 시작 위치를 지정 합니다 합니다.(1~100) .(1~100) strength : 굴곡의 깊이를 지정 합니다 chroma 투명하게 보여질 색상을 16 16진수로 진수로 지정 합니다 합니다.. 형식 filter:chroma filter:chroma(color=# (color=#rrggbb rrggbb); ); alpha 지정된 element element를 를 투명하게 바꾸어 줍니다 줍니다.. 형식 alpha(opacity=opacity, finishopacity= finishopacity =finishopacity finishopacity, , style=style, startx= startx =startx startx, , starty starty= =starty starty, , finishx finishx= =finishx finishx, , finishy= finishy =finishy finishy) ) opacity : 시작 투명도의 단계값을 지정합니다 지정합니다.(0: .(0:투명 투명~100: ~100:불투명 불투명)) finishopacity : 마지막 위치의 투명도 style: 불투명 경사도의 특징을 나타내는 값을 지정 합니다 합니다.. 0 : 변화 없슴 1 : 직선의 불투명 경사도를 가짐 2 : 원형의 불투명 경사도를 가짐 3 : 사각형의 불투명 경사도를 가짐 startx : 불투명 경사도의 시작 x 좌표 starty : 불투명 경사도의 시작 y finishx : 불투명 경사도의 종료 x 좌표 finishy : 불투명 경사도의 종료 y 좌표 revealtrans 객체가 보여지거나 사라질때 23 23가지의 가지의 미리 정의된 효과 효과((사 라지는 모양 모양))를 사용하게 합니다 합니다.. 실제로 구동되는 것은 자바스크립트를 함께 사용해야 합니다 합니다.. 형식 filter:revealtrans filter:revealtrans(duration=duration, (duration=duration, transition=transitionshape transition= transitionshape) ) duration : 효과가 일어나는 시간을 지정하며 지정하며,, 값은 “분 “분..초” 초”로 로 지정 합니다 합니다.. transitionshape 0(box in), 1(box out), 2(circle in), 3(circle out), 4(wipe up), 5(wipe down) 6(wipe right), 7(wipe left), 8(vertical blinds), 9(horizontal blinds) 10(checkerboard across), 11(checkerboard down), 12(random dissolve) 13(split vertical in), 14(split vertical out), 15(split horizontal in) 16(split horizontal out), 17(strips left down), 18(strips left up) 19(strips right down), 20(strips right up), 21(random bars horizontal) 22(random bars vertical), 23(random) javascript에서 알아두어야 할 revealtrans javascript에서 revealtrans의 의 메서드와 속성 메서드 속성 object_name.filters.revealtrans.stop(); object_name.filters.revealtrans.stop(); object_name.filters.revealtrans.apply(); object_name.filters.revealtrans.apply (); object_name.filters.revealtrans.play(); object_name.filters.revealtrans.play (); object_name.filters.revealtrans.transition; object_name.filters.revealtrans.transition; object_name.filters.revealtrans.duration;; object_name.filters.revealtrans.duration 스크립트코드 <img src src="images/ca4.jpg" ="images/ca4.jpg" id="hoho id="hoho"" style="filter:revealtrans style="filter:revealtrans(transition=3, (transition=3, duration =2.5);"> <a href href="#" ="#" onclick onclick=" ="cmd cmd()"> ()">aaaa aaaa</a> </a> <script language=javascript language=javascript> > <!-<! -var chk chk=true; =true; function cmd cmd() () { hoho.filters.revealtrans.stop(); hoho.filters.revealtrans.stop (); hoho.filters.revealtrans.apply(); hoho.filters.revealtrans.apply (); if(chk if( chk)) hoho.src="images/ca4.jpg"; else hoho.src="images/ca2.jpg"; chk=! chk =!chk chk;; hoho.filters.revealtrans.play(); hoho.filters.revealtrans.play (); } //-// --> > </script> blendtrans 선택된 객체를 점차 밝게 밝게(fade (fade in)나타내거나 in)나타내거나,, 점차 사라지게 사라지게(fade (fade out) 함. 형식 filter:blendtrans(duration= (duration=분 분.초); filter:blendtrans 사진에 특수효과를 주는 필터 gray 필터는 컬러 값을 모두 제거하고 흑백사진으 로 만들어준다 만들어준다.. <img src src=" ="이미지 이미지 전체 경로 경로"" style="filter:gray style="filter:gray()"> ()"> invert 필터는 색상 색상,, 채도 채도,, 명도 값을 반전시켜서 반 대되는 느낌의 그림을 만들어준다 만들어준다.. <img src src="Aniston.jpg" ="Aniston.jpg" style="filter:invert style="filter:invert()"> ()"> xray 필터는 x-ray 사진처럼 그림이 흑백으로 표현 된다.. 된다 <img src src="Aniston.jpg" ="Aniston.jpg" style="filter:xray style="filter:xray()"> ()"> chroma 필터는 지정색을 투명하게 만들어 준다 준다.. <img src src=" ="이미지 이미지 전체경로 전체경로"" style="filter:chroma style="filter:chroma(color= (color= 투명하게할 색상명 색상명)"> )"> 문자와 그림을 꾸며주는 필터 대칭 필터로 그림을 상, 하, 좌, 우로 뒤집어준다 뒤집어준다.. <img src src="dog.jpg" ="dog.jpg" style=filter:fliph style=filter:fliph()> ()> <img src src="dog.jpg" ="dog.jpg" style=filter:flipv style=filter:flipv()> ()> alpha 필터는 불투명도 불투명도(opacity) (opacity) 값 조절 <img src src="dog.jpg" ="dog.jpg" style="filter:alpha style=" filter:alpha(opacity=40,style=3,finishopacity=0)"> (opacity=40,style=3,finishopacity=0)"> blur는 blur 는 이미지를 흐리게 하면서 번짐 효과 <img src src="dog.jpg" ="dog.jpg" style="filter:blur style=" filter:blur(direction=225,strength=30,add=0)"> (direction=225,strength=30,add=0)"> wave 필터는 퍼머 머리처럼 웨이브를 준다 준다.. <img src src="dog.jpg" ="dog.jpg" style="filter:wave style=" filter:wave(strength=25,freq=2,lightstrength=95 (strength=25,freq=2,lightstrength=95,, phase=51,add=1)"> phase=51,add=1 )"> 문자에 주로 사용되는 필터 dropshadow 필터는 특정 위치에 그림자를 만들어 준다.. 준다 <p style="filter:dropshadow style="filter:dropshadow(color= (color=gray,offx gray,offx=3,offy=3 =3,offy=3,, position=0)"> position=0 )">DropShadow DropShadow</p> </p> shadow 필터는 지정 각도로 번짐 효과가 있는 그 림자를 만들어준다 만들어준다.. <p style="filter:shadow style="filter:shadow(color= (color=green,direction green,direction=135 =135"> "> Shadow</p> Shadow </p> glow 필터는 문자 주위에 외부 광채를 만들어준다 만들어준다.. <p style="filter:glow style="filter:glow(color= (color=red,strength red,strength=5 =5)"> )"> Glow로 Glow 로 문자에 광채주기 광채주기</p </p> >