我正在创建一个包含标头,导航栏和内容的简单网站。在屏幕分辨率为1366 X 768的浏览器中,它几乎可以正常运行,但是如果您调整浏览器的大小,则所有事情都会混乱。标题变大了,遍及一切。导航栏和标题栏变得很小,因此我无法将鼠标悬停在链接上。如果浏览器很小,则将鼠标悬停在链接上会溢出。在任何分辨率或大小下,导航栏都将扩展到屏幕大小之外。我该如何解决这些问题,以便我的网站能够正确扩展。我不是最好的设计师,并且对后端Web开发更为熟悉。我正在使用像vhvw%这样的度量来调整组件的大小。

fiddle

的HTML

<header id="header"><h1 class="title">Test Test Test</h1></header>
    <nav id="nav">
        <p class="text">Test</p>
        <p class="text">Test</p>
        <p class="text">Test</p>
        <p class="text">Test</p>
        <p class="text">Test</p>
    </nav>


的CSS

@import url(http://fonts.googleapis.com/css?family=Quicksand);

body {
    margin: 0;
    background-color: #dddddd;
}

#header {
    padding-top: 20px;
    padding-left: 35px;
    background-color: #9000f0;
    height: 20vh;
    width: 100%;
    overflow: none;
}

#nav {
    background-color: #44aa66;
    height: 10vh;
    width: 100%;
    padding-left: 10%;
    padding-right: 10%;
    text-align:  center;
}

.title {
    color: #f9f9f9;
    margin: 0;
    font-family: 'Quicksand', sans-serif;
    font-size: 48px;
}

.text {
    height: 65%;
    width: 5%;
    color: #f9f9f9;
    margin: 0;
    padding-top: 20px;
    padding-left: 50px;
    float: left;
}

.text:hover {
    background-color: #44cc66;
}

最佳答案

如果您使用的是IE,VH和VW有时会出现故障,并且无法正常工作。

所以我的建议是通过使用“欺骗” vh值

#header {
    height: 0;
    padding-bottom: 20%;
}




@import url(http://fonts.googleapis.com/css?family=Quicksand);

body {
	margin: 0;
	background-color: #dddddd;
}

#header {
	padding-top: 20px;
	padding-left: 35px;
	background-color: #9000f0;
	height: 0;
    padding-bottom: 20%;
	width: 100%;
	overflow: none;
}

#nav {
	background-color: #44aa66;
	height: 0;
    padding-bottom: 10%;
	width: 100%;
	padding-left: 10%;
	padding-right: 10%;
	text-align:  center;
}

.title {
	color: #f9f9f9;
	margin: 0;
	font-family: 'Quicksand', sans-serif;
	font-size: 48px;
}

.text {
	height: 0;
	width: 5%;
    padding-bottom: 7.5%;
	color: #f9f9f9;
	margin: 0;
	padding-top: 20px;
	padding-left: 50px;
	float: left;
}

.text:hover {
	background-color: #44cc66;
}

<header id="header"><h1 class="title">Test Test Test</h1></header>
	<nav id="nav">
		<p class="text">Test</p>
		<p class="text">Test</p>
		<p class="text">Test</p>
		<p class="text">Test</p>
		<p class="text">Test</p>
	</nav>

10-08 00:22