등비 축소의 자동 적응 신기 - css3의rem

8605 단어
1. rem 소개  rem는 CSS3에서 새로 증가한 단위값으로 그는 em 단위와 마찬가지로 상대적인 단위이다.다른 것은em은 원소의 부원소font-size에 비해 계산한다.rem는 근원소html에 상대적인font-size로 계산한다.이렇게 되면rem은 복잡한 등급 관계를 돌려 em 단위와 유사한 기능을 실현했다.
 
2. rem 호환성
 
rem은 CSS3이 새로 도입한 도량 단위입니다. 여러분의 마음은 틀림없이 의기소침할 것입니다. 브라우저의 지원 상황을 걱정할 것입니다.사실 여러분은 두려워할 필요가 없습니다. 놀라실 수도 있습니다. 지원하는 브라우저가 꽤 많습니다. 예를 들어 Mozilla Firefox 3.6+, 애플 Safari 5+, 구글 크롬, IE9+, Opera 11+ 등입니다.다만 불쌍한 IE6-8은 지지할 수 없다.
단위 설정 글꼴을 사용하면 IE를 전혀 고려하지 않을 수 없습니다. 만약에 이 REM을 사용하고 싶지만 IE의 효과도 호환하고 싶다면'px'와'rem'를 함께 사용하고'px'로 IE6-8의 효과를 실현한 다음에'Rem'을 사용하여 브라우저의 효과를 실현할 수 있습니다.IE6-8을 문자의 변화에 따라 바꿀 수 없게 하자. 누가 이 IE6-8을 이렇게 늙게 했을까?낮은 버전의 IE 브라우저에 대해 다음 작업을 수행할 수 있습니다.
 
[javascript]  view plain
 copy
 
 
html { font-size: 62.5%; }   
  • body { font-size: 14px; font-size: 1.4rem; } /* =14px */  

  • h1   { font-size: 24px; font-size: 2.4rem; } /* =24px */  
     
    이렇게 되면 IE 저버전의 호환성이 떨어지는 문제를 해결했지만 또 다른 부족한 점은 코드량을 늘린 것이다.필연어와 곰발바닥을 겸할 수 없을 때가 많잖아.
    3. rem 사용
    앞에서 말했다em는 부모 요소에 비해 글꼴 크기를 설정합니다. 그러면 문제가 발생할 수 있습니다. 모든 요소를 설정하면 부모 요소의 크기를 알아야 하기 때문에 우리가 여러 번 사용하면 예측할 수 없는 오류 위험을 가져올 수 있습니다.그러나rem는 근원소에 상대적이다, , , , 。

          16px, 일부 px 단위와 rem 간의 전환 관계를 보면 다음과 같다.
     
    다른 값을 설정하려면 루트 원소 , , font-size의 값62.5%이 필요합니다.

     

    [javascript]  view plain  copy
     
     
    1. html {  
    2.     font-size: 62.5%; /* 10 ÷ 16 × 100% = 62.5% */  
    3. }  

     

          font-size10px입니다.

     

    4. :

     

    [html]  view plain  copy
     
     
    1. HTML>  
    2. <html>  
    3. <meta charset="UTF-8">  
    4. <meta name="viewport" content="width=device-width, initial-scale=1" />  
    5. <script src="jquery-1.7.1.min.js">script>  
    6. <title>hometitle>  
    7. <style>  
    8. body {  
    9.     margin: 0;  
    10.     padding: 0;  
    11.     border: 0;  
    12.     background: #fd3b36;  
    13.     font-family: Microsoft Yahei, Arial, sans-serif;  
    14.     overflow-x: hidden;  
    15. }  
    16. #mainpage {  
    17.     background: url(home.png) no-repeat;  
    18.     background-size: 100%;  
    19.     width: 6.4rem;  
    20.     height: 11.36rem;  
    21. }  
    22. #content {  
    23.     width: 5.5rem;  
    24.     font-size: 0.26rem;  
    25.     margin: 0 auto;  
    26.     padding-top: 4.4rem;  
    27.     color: #fff;  
    28.     line-height: 0.38rem;  
    29. }  
    30. #btn {  
    31.     text-align: center;  
    32. }  
    33. #btn img {  
    34.     width: 3.66rem;  
    35.     height: 0.96rem;  
    36.     margin-top: 0.64rem;  
    37. }  
    38. style>  
    39. <title> title>  
    40. <body>  
    41. <div id="mainpage">  
    42.     <div id="content"> 、 , , , , , 。div>  
    43.     <div id="btn">  
    44.         <img src="btn.png">  
    45.     div>  
    46. div>  
    47. <script>  
    48. /* : ;  
    49. chrom 10px ,   
    50. , 100,   
    51. , 100 */  
    52. function defaultfont() {  
    53.     var sw = $(window).width();  
    54.     var pw = 640;  
    55.     var f = 100*sw/pw;  
    56.     $('html').css('font-size', f+'px');  
    57. }  
    58. /* 100ms   
    59. */  
    60. defaultfont();  
    61. setTimeout(function(){  
    62.     defaultfont();  
    63. }, 100);  
    64. script>  
    65. body>  
    66. html>  



     

    좋은 웹페이지 즐겨찾기