html - 在我添加文本时背景图像与导航栏的距离,我该怎么做?
问题描述
我试图在我的背景图像上添加文本,但它导致背景图像与导航栏的距离是 HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css2?family=Noto+Serif:ital@1&display=swap" rel="stylesheet">
<link rel="stylesheet" href="styles.css">
<title>ElectroLand</title>
</head>
<body>
<!--Navbar Starts ====================================== -->
<header>
<div class="container">
<nav>
<div class="logo"><img src="/img/logo.png"></div>
<div class="nav-list">
<ul class="nav-item"><li><a href="#">Home</a></li></ul>
<ul class="nav-item"><li><a href="#">Products</a></li></ul>
<ul class="nav-item"><li><a href="#">About</a></li></ul>
<div class="hamburger" onclick="clk()" id="burger">
<div id="line1"></div>
<div id="line2"></div>
<div id="line3"></div>
</div>
</div>
</nav>
</div>
<div class="sidemenu" id="sdmenu">
<div class="side-items">
<ul class="side-item"><li><a href="#">Home</a></li></ul>
<ul class="side-item"><li><a href="#">Products</a></li></ul>
<ul class="side-item"><li><a href="#">About</a></li></ul>
</div>
</div>
</header>
<script src="/func.js"></script>
<!--Navbar End===========================================-->
<div class="mid-section">
<h1>Welcome to the Land of Electronics</h1>
</div>
</body>
</html>
这是CSS:
/* Navbar starts ===============================================================================*/
body{
padding:0px;
margin:0px;
overflow-x: hidden;
}
.container{
width: 100%;
height:78px;
position: relative;
background-color: rgb(39, 44, 52);
z-index: 1;
}
.logo{
position: absolute;
padding:0.6%;
padding-top: 0.2%;
}
.nav-list{
font-family: 'Noto Serif', serif;
position: absolute;
right: 0px;
top: 1%;
display: flex;
padding:1.0%;
z-index: 1;
}
.nav-list a{
margin: 15px;
text-decoration: none;
color: #80e560;
transition: color 400ms ease-in-out;
}
.nav-list a:hover{
color: #a8fbfc;
}
.nav-list ul{
list-style-type: none;
}
.hamburger{
position: relative;
cursor: pointer;
display: none;
-moz-transform-origin: 20px;
-ms-transform-origin: 20px;
-o-transform-origin: 20px;
-webkit-transform-origin: 20px;
transform-origin: 20px;
transition: width 800ms ease-in-out;
transition: height 800ms ease-in-out;
}
.hamburger div{
width: 20px;
height: 2px;
background-color: #80e560;
margin: 3px;
margin-left: 50%;
transition: transform 210ms ease-in-out;
}
.sidemenu{
position: absolute;
right: 0px;
width: 40%;
height: 100%;
width: 20%;
background-color: rgb(39, 44, 52);
transform:translateX(100%);
transition:transform 500ms;
z-index: 1;
}
.side-items{
height:80%;
justify-content:space-between;
position: absolute;
display: flex;
flex-direction: column;
font-family: 'Noto Serif', serif;
align-items : space-between;
}
.side-item{
list-style-type: none;
}
.side-item a{
color: white;
text-decoration: none;
transition: color 500ms ease-in-out;
}
.side-item a:hover{color:#80e560;}
@media screen and (max-width:1500px){
.logo{padding-top: 0.3%;}
}
@media screen and (max-width:768px){
.nav-item{
display: none;
}
.hamburger{
display:inline;
bottom: 12px;
right: 35px;
}
.side-items{
right: 20%;
}
.nav-list{
padding: 40px;
}
.container{
height: 89px;
}
.logo{padding-top: 2%;}
}
@media screen and (max-width:568px){
.hamburger{
right: 50%;
}
.side-items{
right: 20%;
font-size: 12px;
}
.container{
height: 89px;
}
}
@media screen and (max-width:280px)
{
.side-items{
right: 9%;
}
.hamburger{
right: 6%;
}
}
/* Navbar Ends ========================================================================*/
.mid-section{
background-image: url(/img/background.jpg);
background-position:center;
background-size:cover;
width: 100vw;
height: 100vh;
}
h1{text-align: center;}
我正在研究这些代码。我在调整大小和背景图像方面遇到了很多问题,但我可以解决它们(非常感谢)。但那是新的。我该怎么办 ?这是我正在谈论的丑陋结果:
解决方案
在您的情况下,最好的选择是重置浏览器默认应用到元素的边距和填充。这是重置所有内容的好方法。请注意,如果您使用此选项,则必须添加自定义填充和边距。(基本上,它选择所有元素并为它们提供边距和填充 0 )
这是最佳实践:
*,
*::before,
*::after {
padding: 0;
margin: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
另一种选择是从h1
h1 {
margin: 0
}
这将在不破坏您的设计的情况下解决您的问题。虽然我更喜欢第一个选项,因为这是您每次添加新元素时都会遇到的常见问题。
推荐阅读
- r - 如何让 EXCEL 使用 fwrite 在 R 中解释没有科学记数法的字符变量?
- javascript - HighlightJS 出现的部分 CSS 样式
- javascript - 具有更多输入的 JSON 搜索
- excel - Excel JS API - SettingCollection 不持久
- java - JPA (Hibernate) / QueryDSL left join with condition 不起作用
- javascript - 使用 CKEditor 将图像上传到 S3
- google-apps-script - getBlob() 或 getDataAsString() 在 Google App Script 中是否有最大文件大小?
- mysql - Shell - 使用包含双引号的字符串变量
- android - Android Studio 上的谷歌地图错误
- jquery - 完全加载后显示 jQuery DataTable