作业中的nav导航条和banner之间有缝隙
来源:4-6 自由编程
西瓜拌西瓜
2020-12-10 21:45:57
# 具体遇到的问题
老师好,这里有两个问题想请您帮忙解决一下。
1、为什么我的这个导航页和banner图片中间会有一条缝隙?
2、然后textarea的placeholder显示不出来。
谢谢。
# 报错信息的截图
# 尝试过的解决思路和结果
css文件中添加了
* {
margin: 0;
padding: 0;
}
# 粘贴全部相关代码,切记添加代码注释(请勿截图)
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Career Builder</title>
<meta name="Keywords" content="">
<meta name="Description" content="">
<link rel="stylesheet" href="css/css.css">
</head>
<body>
<!-- Header -->
<header class="top">
<!-- 网页的logo -->
<div class="logo">
<h1>Career Builder</h1>
</div>
<!-- 网页的功能区 -->
<nav class="main-nav">
<ul>
<li><a>HOME</a></li>
<li><a>ABOUT</a></li>
<li><a>GALLERY</a></li>
<li><a>FACULTY</a></li>
<li><a>EVENTS</a></li>
<li><a>CONTACT</a></li>
</ul>
</nav>
</header>
<!-- Banner -->
<section class="banner">
<img src="images/banner3.jpg" class="banner-img">
<div class="center">
<form action="" method="post">
<input class="inputname" type="text" placeholder="your Name">
<input class="inputphone" type="text" placeholder="your Phone">
<input class="inputemail" type="email" placeholder="your Email">
<textarea class="inputarea" cols="15" rows="5" placeholder="Write Your Content Here">
</textarea>
<input class="buttom" type="submit" value="SEND MESSAGE">
</form>
</div>
</section>
</body>
</html>
# css.css
* {
margin: 0;
padding: 0;
}
ul, ol {
list-style: none
}
a {
text-decoration: none
}
/* 最上面的青色横条 */
body header.top {
width: 100%;
height: 80px;
background-color: #07cbc9;
margin: 0 auto;
}
/* 网页最左上角的logo */
header div.logo {
float: left;
height: 48px;
margin: 16px 70px;
}
/* logo的字体大小和颜色 */
header div.logo h1 {
font-size: 38px;
color: white;
}
/* 整个导航条 */
header nav.main-nav ul {
float: right;
width: 750px;
height: 80px;
}
/* 导航条中的每一个链接 */
header nav.main-nav ul li {
float: left;
width: 115px;
font-size: 16px;
color: white;
text-align: center;
/* 行高等于盒子高 */
line-height: 80px;
}
/* a标签转换宽高,这样能够点击的范围就更大 */
header nav.main-nav ul li a {
display: block;
width: 115px;
height: 80px;
font-size: 16px;
color: white;
cursor: pointer;
}
header nav.main-nav ul li a:hover {
background-color: orange;
}
/* Banner */
.banner {
position: relative;
width: 100%;
margin: 0 auto;
}
/* banner长条大图 */
.banner .banner-img {
width: 100%;
height: 600px;
}
/* 遮罩层 */
.banner .center {
position: absolute;
width: 100%;
height: 600px;
top: 50%;
margin-top: -300px;
background-color: rgba(0, 0, 0, 0.5)
}
/* 表单的大框 */
section div form {
position: absolute;
width: 600px;
height: 600px;
top: 50%;
left: 50%;
margin-top: -300px;
margin-left: -300px;
}
/* 表单的每一个输入框*/
.banner .center .inputname {
position: absolute;
display: block;
width: 504px;
height: 40px;
top: 100px;
left: 50%;
margin-left: -252px;
background: none;
}
.banner .center .inputphone {
position: absolute;
display: block;
width: 504px;
height: 40px;
top: 160px;
left: 50%;
margin-left: -252px;
background: none;
}
.banner .center .inputemail {
position: absolute;
display: block;
width: 504px;
height: 40px;
top: 220px;
left: 50%;
margin-left: -252px;
background: none;
}
.banner .center .inputarea {
position: absolute;
display: block;
width: 504px;
height: 110px;
top: 280px;
left: 50%;
margin-left: -252px;
resize: none;
background: none;
}
.banner .center .buttom {
position: absolute;
display: block;
width: 200px;
height: 40px;
top: 460px;
left: 50%;
margin-left: -100px;
background: none;
}
1回答
同学你好,问题回答如下:
1、textarea的placeholder显示不出来是因为标签对换行造成的,同学检查一下标签对是否存在手动换行的问题,textarea会把开始标签到结束标签里的内容全部原样显示,包括空格和代码。如下图,粘贴同学的代码,这里就是因为手动换行,有空格导致的提示信息不显示。

建议:可以调整为下图这样,开始标签与结束标签紧挨着,就不会出现不显示的情况:

2、导航页和banner图片中间会有一条缝隙是图片造成的,网页中图片会自带间隙,可以通过给放图片的容器加font-size:0来解决,如下图:

也可以通过给图片加display:block;来解决这个问题,代码很灵活,解决方法也会有很多种。
祝学习愉快!
相似问题
回答 1
回答 1