2015-01-09 2 views
0

안녕하세요, 저는 제 페이지의 90 %에 항상 맞게 DIV 크기를 조정하려고합니다. 나는 항상 화면 하단에 위치시키고 자하는 바닥 글 (.kontakt)을 가지고 있으므로, DIV가 필요하다. (너무 커서 화면이 스크롤되면 바닥 글이 움직이지 않을 것이다.) jquery를 사용하여 내 div에 외부 HTML 파일을로드하는 중이고 div는 항상 내용에 맞게 크기가 조정됩니다. 문제는, 최대 높이, 최소 높이를 CSS로 설정하고 싶지 않지만 브라우저 창 크기가 조정될 때마다 div의 크기를 조정하고 싶습니다.div 높이를 조정하여 항상 페이지에 맞 춥니 다.

내가 찾지 못한 것을 쉽게 할 수있는 해결책이 있습니까? 그리고 그렇게 할 수있는 함수를 작성할 수 있습니까? 브라우저 창에서 트리거하는 트리거를 사용할 수있는 이벤트 핸들러는 무엇입니까?

난 그냥 위치를 사용할 수있을 것 같아요 : 바닥 글에 고정 (실제로 작동하지 않는)하지만 내 div (따라서 오버플로 : 자동;) 스크롤바를 가지고 싶습니다 브라우저 창에서 스크롤하는 것보다 . 이 .contact 항상 창 높이의 90 %에 해당하는 높이가 있습니다

$(document).ready(function() { 
 
    $('.content').load('pages/test.html'); 
 
    console.log("content loaded"); 
 

 
    $(".kontakt").hover(
 
    function() { 
 
     $(".kontakt").width("20%"); 
 
     $(".kontakt").css("margin-left", "40%"); 
 

 
     $(".kontakt").append("<a class='kontakttext'>mobitel: 031-535-919</a>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>stacionarni tel.: 01-3664-515</a><br>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>email: </a><a class='kontaktmail' href='mailto:[email protected]'>[email protected]</a><br>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>Visoko 19<br>1292 Ig<br>Slovenija</a>"); 
 
    }, 
 
    function() { 
 
     $(".kontakt").empty(); 
 
     $(".kontakt").width("10%"); 
 
     $(".kontakt").css("margin-left", "45%"); 
 
     $(".kontakt").append("<div class='kontaktlabelbox'><div class='kontaktlabel'>Kontakt</div></div>"); 
 
    }); 
 
    $(".menubutton").hover(
 
    function() { 
 
     $(this).css("color", "#cccccc"); 
 
     $(this).prev().css("color", "#cccccc"); 
 
     $(this).next().css("color", "#cccccc"); 
 
    }, 
 
    function() { 
 
     $(this).css("color", "#ffffff"); 
 
     $(this).prev().css("color", "#ffffff"); 
 
     $(this).next().css("color", "#ffffff"); 
 
    }); 
 

 
});
body { 
 
    margin: 0; 
 
    font-family: verdana; 
 
    background-image: url("images/background_test.jpg"); 
 
    background-size: cover; 
 
} 
 
.topmenu { 
 
    width: 90%; 
 
    margin: auto; 
 
    background-color: #000066; 
 
    border-radius: 0px 0px 10px 10px; 
 
    text-align: center; 
 
    opacity: 0.7; 
 
} 
 
.menubutton { 
 
    margin-top: 5px; 
 
    margin-bottom: 5px; 
 
    display: inline-block; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    font-weight: bolder; 
 
    padding: 2px; 
 
} 
 
.activatedmenubutton { 
 
    background-color: #cccccc; 
 
} 
 
.menubreak { 
 
    background-color: #000066; 
 
    display: inline-block; 
 
    color: #ffffff; 
 
    padding: 2px; 
 
} 
 
.kontaktlabel { 
 
    font-weight: bolder; 
 
} 
 
.kontaktlabelbox { 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    margin-top: 6px; 
 
    margin-bottom: 5px; 
 
} 
 
.kontakttext { 
 
    font-size: 0.7em; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
} 
 
.kontaktmail { 
 
    font-size: 0.7em; 
 
    text-decoration: none; 
 
    color: #999999; 
 
} 
 
.content { 
 
    margin: auto; 
 
    width: 80%; 
 
    min-height: 200px; 
 
    overflow: auto; 
 
    border: 1px solid black; 
 
} 
 
.kontakt { 
 
    position: absolute; 
 
    bottom: 0; 
 
    width: 10%; 
 
    margin-left: 45%; 
 
    background-color: #000066; 
 
    color: #cccccc; 
 
    border-radius: 10px 10px 0px 0px; 
 
    text-align: center; 
 
}
<!DOCTYPE html> 
 

 
<html> 
 

 
<head> 
 
    <title>Iščem delo</title> 
 
    <meta charset="UTF-8"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    <link type="text/css" rel="stylesheet" href="unicornsandrainbows.css" /> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
    <script src="magic.js"></script> 
 
</head> 
 

 
<body> 
 
    <div class="topmenu"> 
 
    <a class="menubreak" id="1">|</a 
 
      ><a class="menubutton" id="iz">Izobrazba</a 
 
      ><a class="menubreak" id="2">|</a 
 
      ><a class="menubutton" id="zn">Znanja in Kompetence</a 
 
      ><a class="menubreak" id="3">|</a 
 
      ><a class="menubutton" id="izk">Izkušnje</a 
 
      ><a class="menubreak" id="4">|</a 
 
      ><a class="menubutton" id="pč">Prosti Čas</a 
 
      ><a class="menubreak" id="5">|</a 
 
      ><a class="menubutton" id="fo">Fotografije</a 
 
      ><a class="menubreak" id="6">|</a> 
 
    </div> 
 
    <div class="content"> 
 
    </div> 
 
    <div class="kontakt"> 
 
    <div class="kontaktlabelbox"> 
 
     <div class="kontaktlabel">Kontakt</div> 
 
    </div> 
 
    </div> 
 
</body> 
 

 
</html>

+0

는 솔직히, 난 당신이 말한대로 CSS는 최선의 경로 ... 바닥 글을 수정 생각 90 %에'div'의 높이를 설정하고, 또한'오버 플로우 적용 스크롤 '그것에. –

답변

1

도움을 주셔서 감사합니다 :

$(document).ready(function() { 
 
    $('.content').load('pages/test.html'); 
 
    console.log("content loaded"); 
 

 
    $(".kontakt").hover(
 
    function() { 
 
     $(".kontakt").width("20%"); 
 
     $(".kontakt").css("margin-left", "40%"); 
 

 
     $(".kontakt").append("<a class='kontakttext'>mobitel: 031-535-919</a>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>stacionarni tel.: 01-3664-515</a><br>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>email: </a><a class='kontaktmail' href='mailto:[email protected]'>[email protected]</a><br>"); 
 
     $(".kontakt").append("<br><a class='kontakttext'>Visoko 19<br>1292 Ig<br>Slovenija</a>"); 
 
    }, 
 
    function() { 
 
     $(".kontakt").empty(); 
 
     $(".kontakt").width("10%"); 
 
     $(".kontakt").css("margin-left", "45%"); 
 
     $(".kontakt").append("<div class='kontaktlabelbox'><div class='kontaktlabel'>Kontakt</div></div>"); 
 
    }); 
 
    $(".menubutton").hover(
 
    function() { 
 
     $(this).css("color", "#cccccc"); 
 
     $(this).prev().css("color", "#cccccc"); 
 
     $(this).next().css("color", "#cccccc"); 
 
    }, 
 
    function() { 
 
     $(this).css("color", "#ffffff"); 
 
     $(this).prev().css("color", "#ffffff"); 
 
     $(this).next().css("color", "#ffffff"); 
 
    }); 
 

 
}); 
 

 
$(window).load(function() { $(window).trigger('resize') }); 
 

 
$(window).resize(function() { 
 
    h = $(window).height() * 0.9; 
 
    $('.content').css({'height': h + 'px'}); 
 
});
body { 
 
    margin: 0; 
 
    font-family: verdana; 
 
    background-image: url("images/background_test.jpg"); 
 
    background-size: cover; 
 
} 
 
.topmenu { 
 
    width: 90%; 
 
    margin: auto; 
 
    background-color: #000066; 
 
    border-radius: 0px 0px 10px 10px; 
 
    text-align: center; 
 
    opacity: 0.7; 
 
} 
 
.menubutton { 
 
    margin-top: 5px; 
 
    margin-bottom: 5px; 
 
    display: inline-block; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    font-weight: bolder; 
 
    padding: 2px; 
 
} 
 
.activatedmenubutton { 
 
    background-color: #cccccc; 
 
} 
 
.menubreak { 
 
    background-color: #000066; 
 
    display: inline-block; 
 
    color: #ffffff; 
 
    padding: 2px; 
 
} 
 
.kontaktlabel { 
 
    font-weight: bolder; 
 
} 
 
.kontaktlabelbox { 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    margin-top: 6px; 
 
    margin-bottom: 5px; 
 
} 
 
.kontakttext { 
 
    font-size: 0.7em; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
} 
 
.kontaktmail { 
 
    font-size: 0.7em; 
 
    text-decoration: none; 
 
    color: #999999; 
 
} 
 
.content { 
 
    margin: auto; 
 
    width: 80%; 
 
    min-height: 200px; 
 
    overflow: auto; 
 
    border: 1px solid black; 
 
} 
 
.kontakt { 
 
    position: absolute; 
 
    bottom: 0; 
 
    width: 10%; 
 
    margin-left: 45%; 
 
    background-color: #000066; 
 
    color: #cccccc; 
 
    border-radius: 10px 10px 0px 0px; 
 
    text-align: center; 
 
}
<!DOCTYPE html> 
 

 
<html> 
 

 
<head> 
 
    <title>Iščem delo</title> 
 
    <meta charset="UTF-8"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    <link type="text/css" rel="stylesheet" href="unicornsandrainbows.css" /> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
    <script src="magic.js"></script> 
 
</head> 
 

 
<body> 
 
    <div class="topmenu"> 
 
    <a class="menubreak" id="1">|</a 
 
      ><a class="menubutton" id="iz">Izobrazba</a 
 
      ><a class="menubreak" id="2">|</a 
 
      ><a class="menubutton" id="zn">Znanja in Kompetence</a 
 
      ><a class="menubreak" id="3">|</a 
 
      ><a class="menubutton" id="izk">Izkušnje</a 
 
      ><a class="menubreak" id="4">|</a 
 
      ><a class="menubutton" id="pč">Prosti Čas</a 
 
      ><a class="menubreak" id="5">|</a 
 
      ><a class="menubutton" id="fo">Fotografije</a 
 
      ><a class="menubreak" id="6">|</a> 
 
    </div> 
 
    <div class="content"> 
 
    </div> 
 
    <div class="kontakt"> 
 
    <div class="kontaktlabelbox"> 
 
     <div class="kontaktlabel">Kontakt</div> 
 
    </div> 
 
    </div> 
 
</body> 
 

 
</html>

+0

.content는 접촉하지 않지만 그래, 솔루션은 완벽하게 작동하며 정확히 내가 찾고있는 것입니다. 감사 –

0

@ 존 Kapantzakis 이미 제공 한 해결책이 있지만 나는 너에게 non js sol을 줄려고 노력할 것이다. ution 여기! ~ 트릭을 이해하고 싶다면 알려주세요. P.S이 솔루션은 레이아웃을 정확히 90 %로 유지했지만 바닥 글 자체에는 음수 영역이 충분합니다. 그것을 가지고 노는 것이 그것이 당신이 원하는 것이라면 알려주십시오.

body { 
 
    margin: 0; 
 
    font-family: verdana; 
 
    background-image: url("images/background_test.jpg"); 
 
    background-size: cover; 
 
} 
 
.topmenu { 
 
    width: 90%; 
 
    margin: auto; 
 
    background-color: #000066; 
 
    border-radius: 0px 0px 10px 10px; 
 
    text-align: center; 
 
    opacity: 0.7; 
 
} 
 
.menubutton { 
 
    margin-top: 5px; 
 
    margin-bottom: 5px; 
 
    display: inline-block; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    font-weight: bolder; 
 
    padding: 2px; 
 
} 
 
.activatedmenubutton { 
 
    background-color: #cccccc; 
 
} 
 
.menubreak { 
 
    background-color: #000066; 
 
    display: inline-block; 
 
    color: #ffffff; 
 
    padding: 2px; 
 
} 
 
.kontaktlabel { 
 
    font-weight: bolder; 
 
} 
 
.kontaktlabelbox { 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
    margin-top: 6px; 
 
    margin-bottom: 5px; 
 
} 
 
.kontakttext { 
 
    font-size: 0.7em; 
 
    background-color: #000066; 
 
    color: #ffffff; 
 
} 
 
.kontaktmail { 
 
    font-size: 0.7em; 
 
    text-decoration: none; 
 
    color: #999999; 
 
} 
 
.content { 
 
    margin: auto; 
 
    width: 80%; 
 
    min-height: 200px; 
 
    height: 100%; 
 
    overflow: auto; 
 
    border: 1px solid black; 
 
    -webkit-box-sizing: border-box; 
 
    -moz-box-sizing: border-box; 
 
    -o-box-sizing: border-box; 
 
    box-sizing: border-box; 
 
} 
 
.kontakt { 
 
    background-color: #000066; 
 
    border-radius: 10px 10px 0 0; 
 
    bottom: 0; 
 
    color: #cccccc; 
 
    display: inline-block; 
 
    margin: 10px auto 0; 
 
    padding: 0 7px; 
 
    position: static; 
 
    text-align: center; 
 
} 
 
body, html{ height: 100%; } 
 
.t-layout{ display: table; width: 100% } 
 
.t-layout--full{ height: 100%; } 
 
.t-row{ display: table-row; } 
 
.t-col{ display: table-cell; } 
 
.t-col--top{ vertical-align: top; } 
 
.t-col--mid{ vertical-align: middle; } 
 
.t-col--bot{ vertical-align: bottom; } 
 
.t-col--compress{ height: 1px; } 
 
.t-a-c{ text-align: center; } 
 
.content-wrap{ position: absolute; width: 100%; height: 100%; left: 0; top: 0; overflow-y: auto;} 
 
.relative{ position: relative; }
<!DOCTYPE html> 
 

 
<html> 
 

 
    <head> 
 
    <title>Iščem delo</title> 
 
    <meta charset="UTF-8"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    <link type="text/css" rel="stylesheet" href="unicornsandrainbows.css" /> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
    <script src="magic.js"></script> 
 
    </head> 
 

 
    <body> 
 
    <div class="t-layout t-layout--full"> 
 
     <div class="t-row"> 
 
     <div class="t-col t-col--compress"> 
 
      <div class="topmenu"> 
 
      <a class="menubreak" id="1">|</a 
 
        ><a class="menubutton" id="iz">Izobrazba</a 
 
        ><a class="menubreak" id="2">|</a 
 
        ><a class="menubutton" id="zn">Znanja in Kompetence</a 
 
        ><a class="menubreak" id="3">|</a 
 
        ><a class="menubutton" id="izk">Izkušnje</a 
 
        ><a class="menubreak" id="4">|</a 
 
        ><a class="menubutton" id="pč">Prosti Čas</a 
 
        ><a class="menubreak" id="5">|</a 
 
        ><a class="menubutton" id="fo">Fotografije</a 
 
        ><a class="menubreak" id="6">|</a> 
 
      </div> 
 
     </div><!--.t-col --> 
 
     </div><!--.t-row --> 
 
     <div class="t-row"> 
 
     <div class="t-col t-col--top relative"> 
 
      <div class="content-wrap"> 
 
      <div class="content"> 
 
      </div> 
 
      </div> 
 
     </div><!--.t-col --> 
 
     </div><!--.t-row --> 
 
     <div class="t-row"> 
 
     <div class="t-col t-a-c t-col--bot t-col--compress"> 
 
      <div class="kontakt"> 
 
      <div class="kontaktlabelbox"> 
 
       <div class="kontaktlabel">Kontakt</div> 
 
      </div> 
 
      </div> 
 
     </div><!--.t-col --> 
 
     </div><!--.t-row --> 
 
    </div><!--.t-layout --> 
 
    </body> 
 

 
</html>

관련 문제