【问题标题】:How to fix a gap on right side of a mobile website如何修复移动网站右侧的空白
【发布时间】:2022-01-09 09:30:18
【问题描述】:

我正在处理一个学校项目,并正在针对移动设备进行优化。当我进入网站时,我在屏幕右侧看到一个白色间隙(见截图)。我试图做研究,但我发现的一切都不起作用。 iPhone Website。有人可以帮助指导我正确的方向吗?我以前从来没有做过网站,我只是不明白如何优化网站哈哈

header{
    background-image: url(banner1.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-color: #FACABC;
    background-position: center;
    display: block;
    position: relative;
}

h1, h2, h3, footer{
    text-align: center;
}



h1{
    color: #FACABC;
    font-family: RedRock, "Times New Roman", sans-sarif;
    line-height: 5px;
}

.title{
    font-size: 500%;
}

h2{
    font-family: primer, "Times New Roman", sans-sarif;
    font-size: 200%;
    text-shadow: 1px 1px 2px #FACABC;
    color: #987b74;
}

#homelink{
    text-align: left;
    text-decoration: none;
    padding-left: 2%;
    font-size: 135%;
    font-family: RedRock, "Times New Roman", sans-sarif;
    color: #FACABC;
    text-shadow: 1px 1px 2px black;
}

ion-icon{
    padding-left: 6em;
    font-size: 41px;
    color: #987b74;
}

ion-icon:hover{
    color: #FACABC;
    transition: all 0.5s ease;
}

body{
    font-family: RedRock, "Times New Roman", sans-sarif;
    margin: 0;
    /* test and see if this works wit/without below two things*/
    overflow-x: hidden;
    overflow-y: scroll;
}

.container{
    position: sticky;
    top: 0;
    position: -webkit-sticky;
    background: #FACABC;
    z-index:1;
}

/* Nav bar*/
    


.container nav{
    width: 100%;
    height: 76px;
    font-size: 48px;
}

.container nav a{
    text-align: center;
    text-decoration: none;
    color: #987b74;
}

.container nav ul{
    width: 100%;
    height: 100%;
    margin: 0 auto;
    list-style-type: none;
    transition: all 0.5s ease;
}

.container nav ul li{
    width: 10%;
    float: left;
    text-align: center;
    color: #987b74;
    font-size: 41px;
    font-weight: bold;
    transition: all 0.5s ease;
    position: sticky;
    cursor: pointer;
    top: 0;
}

.container nav ul li:hover{
    color: #5E4C47;
}   

.container nav ul li ul.sub-nav {
    position: absolute;
    background-color: #FACABC; /* Background of drop down */
    width: 75%;
    height: 110px;
    box-shadow: 1px 1px 2px rgba(0,0,0,0.14), -1px 0px 1px rgba(0,0,0,0.14);
    top: 74px;
    left: 0;
    visibility: hidden;
    opacity: 0;
}

.container nav ul li ul.sub-nav li{

    font-size: 31px;
    font-family: primer, "Times New Roman", sans-sarif;
    width: 75%;
}

.container nav ul li:hover ul.sub-nav{ /* Drop down menu visibility */
    visibility: visible;
    opacity: 75%;
    margin-top: 2px;
}

.container li{
    display: inline-block;
}

.container nav ul li ul.sub-nav a:hover{
    color: #5E4C47;
    transition: all 0.5s ease;
}

.container nav ul li ul.sub-nav a{
    padding: 0;
}

main h2{
    padding-right: 10em;
    padding-left: 10em;
}

main .learn-more{
  border-radius: 2px;
  background-color: #FACABC;
  border: none;
  color: #987b74;
  text-align: center;
  font-size: 28px;
  padding: 20px;
  width: 275px;
  transition: all 0.5s;
  cursor: pointer;
  margin: 0;
  position: absolute;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
font-family: primer, "Times New Roman", sans-sarif;
}

main .learn-more span{
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: 0.5s;
}

main .learn-more span:after{
  content: '\00bb';
  position: absolute;
  opacity: 0;
  top: 0;
  right: -20px;
  transition: 0.5s;
}

main .learn-more:hover span{
  padding-right: 25px;
}

main .learn-more:hover span:after{
  opacity: 1;
  right: 0;
} 

.video-trailer{
    background-image: radial-gradient(#f8f8f8, #FACABC, #f8f8f8);
}

main ul li{
    list-style-type: none;
    display: inline;
    padding-left: 2%;
    padding-right: 0%;
}

main h1{
    font-size: 60px;
}

footer{
    color: #987b74;
}

.backgroundcolor{ /* To get that cream color background!*/
    background-color: #f8f8f8;
}

table {
  font-family: primer, "Times New Roman", sans-sarif;
  color: #987b74;
  font-weight: bold;
  border-collapse: collapse;
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 640px)
{
    body, html{
        overflow-x: hidden;
        padding: 0.8em 0;
    }
}

<!DOCTYPE html>
<html>
<div id="wrapper">
    <title>HighItsKy</title>
    <link href="highitsky.css" rel="stylesheet">
    <link href="http://fonts.cdnfonts.com/css/redrock" rel="stylesheet">
    <link href="http://fonts.cdnfonts.com/css/primer" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">     

<body>
    <header>
        <a id="homelink" href="index.html">
            <h2 id="homelink">HighItsKy</h2>
        </a>
        <br><br><br><br>
        <span class="title"><h1>HighItsKy</h1></span>
        <h2>part time streamer, full time vibe</h2>
        <br><br>
        <a href="https://www.twitch.tv/highitsky/" target="_blank"><ion-icon name="logo-twitch"></ion-icon></a>
        <a href="https://discord.gg/M2umXEhkNq" target="_blank"><ion-icon name="logo-discord"></ion-icon></a>
        <a href="https://youtube.com/highitsky" target="_blank"><ion-icon name="logo-youtube"></ion-icon></a>
        <a href="https://www.instagram.com/highitsky_/" target="_blank"><ion-icon name="logo-instagram"></ion-icon></a>
        <a href="https://www.tiktok.com/@highitsky" target="_blank"><ion-icon name="logo-tiktok"></ion-icon></a>
        <a href="https://www.twitter.com/highitsky_/" target="_blank"><ion-icon name="logo-twitter"></ion-icon></a>
        <script type="module" src="https://unpkg.com/ionicons@5.5.2/dist/ionicons/ionicons.esm.js"></script>
        <script nomodule src="https://unpkg.com/ionicons@5.5.2/dist/ionicons/ionicons.js"></script>
        <br><br><br><br><br>
    </header>
    <div class="container">
        <nav>
            <ul class="tabs">
                <a href="index.html">
                    <li>Home</li>
                </a>
                <li style="white-space: nowrap;">About Me
                    <ul class="sub-nav">
                        <a href="AboutMe.html">
                            <li>ABOUT</li>
                        </a>
                        <a href="Cloves.html">
                            <li>CLOVES</li>
                        </a>
                    </ul>
                </li>
                <li>Socials
                    <ul class="sub-nav">
                        <a href="Socials.html">
                            <li>SOCIALS</li>
                        </a>
                        <a href="Contact.html">
                            <li>CONTACT</li>
                        </a>
                    </ul>
                </li>
                <a href="Community.html">
                    <li>Community</li>
                </a>
                <a href="Partnerships.html">
                    <li>Partnerships</li>
                </a>
                <li>Support
                    <ul class="sub-nav">
                        <a href="Donate.html">
                            <li>DONATE</li>
                        </a>
                        <a href="Merch.html">
                            <li>MERCH</li>
                        </a>
                        <a href="Causes.html">
                            <li>CAUSES</li>
                        </a>
                    </ul>
                </li>
            </ul>
        </nav>
        <div class="header"></div>
    </div>
    <main>
        <div class="backgroundcolor">
        <br><br>
        <h1>High, I'm Ky</h1>
        <br>
            <h2>I started streaming on Twitch in February of 2020, with my streams mainly consisting of Minecraft content! 
            Whether I am dying a lot in Singleplayer or getting scared by creepers, my main focus is maintaining a positive and welcoming 
            community in a not-so-welcoming world. I currently live in Kansas, and I am 19 years old and majoring in Computer Science at FHSU. . . </h2>
            <br>
            <a href="AboutMe.html"><button class="learn-more"><span>LEARN MORE </span></button></a>
            <br><br><br><br><br>
        </div>
        <div class="video-trailer">
            <br><br>
            <h2>My streams consist of a lot of yelling, dying, losing, and sometimes crying, but...</h2>
            <br><br>
            <center>
        <video controls height="64%" width="62%" style='border: 2px solid #FACABC;'>
            <source src="trailer.mp4" srclang="en" type="video/mp4">
        </video>
        
            <br><br>
            <h2>what matters is that I get to spend time with the people that I love; my community!</h2>
            <br><br>
        </div>
        <div class="backgroundcolor">
            <br><br>
            <h1>High-lights</h1>
            <br><br>
            <hr size="2" color="#987b74">
            <br><br>
            <ul>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/HQQ3LfzPrEI" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/zNUe4U8ps5k" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/Sh7yxSijuxI" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <br><br>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/PGgvM_9pZok" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/S_M8JgzfdW4" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/Pk0GZE-3EqQ" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
            </ul>
            <br><br>
            <hr size="2" color="#987b74">
            <footer>HighItsKy &copy; 2020 </footer>
        </div>
    </main>
</html>

【问题讨论】:

  • 尝试添加* { box-shadow: inset 0 0 1px rgba(0,0,0,.5) } 来勾勒页面上的所有元素。在较低的分辨率下,很可能有一些东西会导致井喷。比视口更宽的单个元素。 body {overflow-x: hidden} 可以用来解决这个问题,但最好是找到问题的根源并调整导致井喷的元素而不是解决症状。
  • @admcfajn 奇怪的是,当我这样做时,它根本不会显示框阴影。不过,我可以在 PC 上看到它很好
  • 也许尝试使用边框呢?此外,如果您使用元素检查器的移动视图在 pc 上进行测试以超过浏览器的最小宽度,可能会帮助您复制结果。当前的答案可能会解决该问题,但解决潜在问题会更好。它还可能取决于您使用的 iphone 版本,因为它们支持不同版本的 safari。

标签: html css optimization media-queries


【解决方案1】:

你应该给你的身体增加宽度

@media screen and (max-width: 640px)
{
    body, html{
        width: 100vw;
        overflow-x: hidden;
        padding: 0.8em 0;
    }
}

header{
    background-image: url(banner1.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-color: #FACABC;
    background-position: center;
    display: block;
    position: relative;
}

h1, h2, h3, footer{
    text-align: center;
}



h1{
    color: #FACABC;
    font-family: RedRock, "Times New Roman", sans-sarif;
    line-height: 5px;
}

.title{
    font-size: 500%;
}

h2{
    font-family: primer, "Times New Roman", sans-sarif;
    font-size: 200%;
    text-shadow: 1px 1px 2px #FACABC;
    color: #987b74;
}

#homelink{
    text-align: left;
    text-decoration: none;
    padding-left: 2%;
    font-size: 135%;
    font-family: RedRock, "Times New Roman", sans-sarif;
    color: #FACABC;
    text-shadow: 1px 1px 2px black;
}

ion-icon{
    padding-left: 6em;
    font-size: 41px;
    color: #987b74;
}

ion-icon:hover{
    color: #FACABC;
    transition: all 0.5s ease;
}

body{
    font-family: RedRock, "Times New Roman", sans-sarif;
    margin: 0;
    /* test and see if this works wit/without below two things*/
    overflow-x: hidden;
    overflow-y: scroll;
}

.container{
    position: sticky;
    top: 0;
    position: -webkit-sticky;
    background: #FACABC;
    z-index:1;
}

/* Nav bar*/
    


.container nav{
    width: 100%;
    height: 76px;
    font-size: 48px;
}

.container nav a{
    text-align: center;
    text-decoration: none;
    color: #987b74;
}

.container nav ul{
    width: 100%;
    height: 100%;
    margin: 0 auto;
    list-style-type: none;
    transition: all 0.5s ease;
}

.container nav ul li{
    width: 10%;
    float: left;
    text-align: center;
    color: #987b74;
    font-size: 41px;
    font-weight: bold;
    transition: all 0.5s ease;
    position: sticky;
    cursor: pointer;
    top: 0;
}

.container nav ul li:hover{
    color: #5E4C47;
}   

.container nav ul li ul.sub-nav {
    position: absolute;
    background-color: #FACABC; /* Background of drop down */
    width: 75%;
    height: 110px;
    box-shadow: 1px 1px 2px rgba(0,0,0,0.14), -1px 0px 1px rgba(0,0,0,0.14);
    top: 74px;
    left: 0;
    visibility: hidden;
    opacity: 0;
}

.container nav ul li ul.sub-nav li{

    font-size: 31px;
    font-family: primer, "Times New Roman", sans-sarif;
    width: 75%;
}

.container nav ul li:hover ul.sub-nav{ /* Drop down menu visibility */
    visibility: visible;
    opacity: 75%;
    margin-top: 2px;
}

.container li{
    display: inline-block;
}

.container nav ul li ul.sub-nav a:hover{
    color: #5E4C47;
    transition: all 0.5s ease;
}

.container nav ul li ul.sub-nav a{
    padding: 0;
}

main h2{
    padding-right: 10em;
    padding-left: 10em;
}

main .learn-more{
  border-radius: 2px;
  background-color: #FACABC;
  border: none;
  color: #987b74;
  text-align: center;
  font-size: 28px;
  padding: 20px;
  width: 275px;
  transition: all 0.5s;
  cursor: pointer;
  margin: 0;
  position: absolute;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
font-family: primer, "Times New Roman", sans-sarif;
}

main .learn-more span{
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: 0.5s;
}

main .learn-more span:after{
  content: '\00bb';
  position: absolute;
  opacity: 0;
  top: 0;
  right: -20px;
  transition: 0.5s;
}

main .learn-more:hover span{
  padding-right: 25px;
}

main .learn-more:hover span:after{
  opacity: 1;
  right: 0;
} 

.video-trailer{
    background-image: radial-gradient(#f8f8f8, #FACABC, #f8f8f8);
}

main ul li{
    list-style-type: none;
    display: inline;
    padding-left: 2%;
    padding-right: 0%;
}

main h1{
    font-size: 60px;
}

footer{
    color: #987b74;
}

.backgroundcolor{ /* To get that cream color background!*/
    background-color: #f8f8f8;
}

table {
  font-family: primer, "Times New Roman", sans-sarif;
  color: #987b74;
  font-weight: bold;
  border-collapse: collapse;
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 640px)
{
    body, html{
        width: 100vw;
        overflow-x: hidden;
        padding: 0.8em 0;
    }
}
<!DOCTYPE html>
<html>
<div id="wrapper">
    <title>HighItsKy</title>
    <link href="highitsky.css" rel="stylesheet">
    <link href="http://fonts.cdnfonts.com/css/redrock" rel="stylesheet">
    <link href="http://fonts.cdnfonts.com/css/primer" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">     

<body>
    <header>
        <a id="homelink" href="index.html">
            <h2 id="homelink">HighItsKy</h2>
        </a>
        <br><br><br><br>
        <span class="title"><h1>HighItsKy</h1></span>
        <h2>part time streamer, full time vibe</h2>
        <br><br>
        <a href="https://www.twitch.tv/highitsky/" target="_blank"><ion-icon name="logo-twitch"></ion-icon></a>
        <a href="https://discord.gg/M2umXEhkNq" target="_blank"><ion-icon name="logo-discord"></ion-icon></a>
        <a href="https://youtube.com/highitsky" target="_blank"><ion-icon name="logo-youtube"></ion-icon></a>
        <a href="https://www.instagram.com/highitsky_/" target="_blank"><ion-icon name="logo-instagram"></ion-icon></a>
        <a href="https://www.tiktok.com/@highitsky" target="_blank"><ion-icon name="logo-tiktok"></ion-icon></a>
        <a href="https://www.twitter.com/highitsky_/" target="_blank"><ion-icon name="logo-twitter"></ion-icon></a>
        <script type="module" src="https://unpkg.com/ionicons@5.5.2/dist/ionicons/ionicons.esm.js"></script>
        <script nomodule src="https://unpkg.com/ionicons@5.5.2/dist/ionicons/ionicons.js"></script>
        <br><br><br><br><br>
    </header>
    <div class="container">
        <nav>
            <ul class="tabs">
                <a href="index.html">
                    <li>Home</li>
                </a>
                <li style="white-space: nowrap;">About Me
                    <ul class="sub-nav">
                        <a href="AboutMe.html">
                            <li>ABOUT</li>
                        </a>
                        <a href="Cloves.html">
                            <li>CLOVES</li>
                        </a>
                    </ul>
                </li>
                <li>Socials
                    <ul class="sub-nav">
                        <a href="Socials.html">
                            <li>SOCIALS</li>
                        </a>
                        <a href="Contact.html">
                            <li>CONTACT</li>
                        </a>
                    </ul>
                </li>
                <a href="Community.html">
                    <li>Community</li>
                </a>
                <a href="Partnerships.html">
                    <li>Partnerships</li>
                </a>
                <li>Support
                    <ul class="sub-nav">
                        <a href="Donate.html">
                            <li>DONATE</li>
                        </a>
                        <a href="Merch.html">
                            <li>MERCH</li>
                        </a>
                        <a href="Causes.html">
                            <li>CAUSES</li>
                        </a>
                    </ul>
                </li>
            </ul>
        </nav>
        <div class="header"></div>
    </div>
    <main>
        <div class="backgroundcolor">
        <br><br>
        <h1>High, I'm Ky</h1>
        <br>
            <h2>I started streaming on Twitch in February of 2020, with my streams mainly consisting of Minecraft content! 
            Whether I am dying a lot in Singleplayer or getting scared by creepers, my main focus is maintaining a positive and welcoming 
            community in a not-so-welcoming world. I currently live in Kansas, and I am 19 years old and majoring in Computer Science at FHSU. . . </h2>
            <br>
            <a href="AboutMe.html"><button class="learn-more"><span>LEARN MORE </span></button></a>
            <br><br><br><br><br>
        </div>
        <div class="video-trailer">
            <br><br>
            <h2>My streams consist of a lot of yelling, dying, losing, and sometimes crying, but...</h2>
            <br><br>
            <center>
        <video controls height="64%" width="62%" style='border: 2px solid #FACABC;'>
            <source src="trailer.mp4" srclang="en" type="video/mp4">
        </video>
        
            <br><br>
            <h2>what matters is that I get to spend time with the people that I love; my community!</h2>
            <br><br>
        </div>
        <div class="backgroundcolor">
            <br><br>
            <h1>High-lights</h1>
            <br><br>
            <hr size="2" color="#987b74">
            <br><br>
            <ul>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/HQQ3LfzPrEI" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/zNUe4U8ps5k" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/Sh7yxSijuxI" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <br><br>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/PGgvM_9pZok" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/S_M8JgzfdW4" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
                <li>
                    <iframe width="560" height="315" src="https://www.youtube.com/embed/Pk0GZE-3EqQ" 
                    title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; 
                    encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
                    </iframe>
                </li>
            </ul>
            <br><br>
            <hr size="2" color="#987b74">
            <footer>HighItsKy &copy; 2020 </footer>
        </div>
    </main>
</html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    • 1970-01-01
    相关资源
    最近更新 更多