스팬을 사용하여 사용자 정의 테두리를 만들 수 있습니다. 클래스 (테두리가가는 방향 지정)와 ID로 스팬을 만듭니다.
<html>
<body>
<div class="mdiv">
<span class="VerticalBorder" id="Span1"></span>
<header class="mheader">
<span class="HorizontalBorder" id="Span2"></span>
</header>
</div>
</body>
</html>
그런 다음 CSS로 이동하여 클래스를 position:absolute, height:100%(세로 테두리의 경우), width:100%(가로 테두리의 경우) margin:0%및 background-color:#000000;. 필요한 모든 것을 추가하십시오.
body{
margin:0%;
}
div.mdiv{
position:absolute;
width:100%;
height:100%;
top:0%;
left:0%;
margin:0%;
}
header.mheader{
position:absolute;
width:100%;
height:20%;
top:0%;
left:0%;
margin:0%;
}
span.HorizontalBorder{
position:absolute;
width:100%;
margin:0%;
background-color:#000000;
}
span.VerticalBorder{
position:absolute;
height:100%;
margin:0%;
background-color:#000000;
}
이어서 대응가 그 ID를 설정 class="VerticalBorder"에 top:0%;, left:0%;, width:1%;목회학의 폭이 100 %에서 mheader의 폭과 동일하기 때문에 (즉, 폭이 위치를 설정 한 것에 100 %가 될 것이다. 사용자가 1 % 폭을 설정하면 테두리는 창 너비의 1 %가됩니다). ID를 설정 그에 해당 class="HorizontalBorder"하는 top:99%(가 정상이 헤더에 따라에있는 위치를 참조하는 헤더 컨테이너에있어입니다. 당신이 바닥에 도달하려는 경우가 + 높이가 100 %까지 추가해야합니다), left:0%;및 height:1%(mdiv의 높이가 mheader 높이 [100 % = 100, 20 % = 20, 100/20 = 5]보다 5 배 더 크므로 높이는 설정 한 것의 20 %가됩니다. 높이를 설정하면 경계선은 창 높이의 .2 %가됩니다). 다음과 같이 표시됩니다.
span#Span1{
top:0%;
left:0%;
width:.4%;
}
span#Span2{
top:99%;
left:0%;
width:1%;
}
고지 사항 : 창 크기를 충분히 작게 조정하면 테두리가 사라집니다. 해결책은 창 크기가 특정 지점으로 조정되는 경우 테두리 크기를 제한하는 것입니다. 내가 한 일은 다음과 같습니다.
window.addEventListener("load", Loaded);
function Loaded() {
window.addEventListener("resize", Resized);
function Resized() {
var WindowWidth = window.innerWidth;
var WindowHeight = window.innerHeight;
var Span1 = document.getElementById("Span1");
var Span2 = document.getElementById("Span2");
if (WindowWidth <= 800) {
Span1.style.width = .4;
}
if (WindowHeight <= 600) {
Span2.style.height = 1;
}
}
}
모든 것을 올바르게 수행했다면 https://jsfiddle.net/umhgkvq8/12/ 링크에있는 것처럼 보일 것입니다.
이상한 이유로 테두리는 jsfiddle에서 사라지지만 브라우저에서 실행하면 사라집니다. .
border-width백분율을 값으로 지원하지 않습니다. em, px, ex 등을 사용할 수 있습니다. 그런데 왜 aborder-width를 10 % 로 설정하고 싶 습니까?