簡體   English   中英

React 身體似乎沒有達到 100% 的高度

[英]React body doesn't seem to get 100% height

我想找到解決這種特殊性的方法。 我試圖在我的應用程序主體中設置漸變背景,但我的主體似乎沒有達到屏幕的 100%,這會導致背景重復。 我以前從未見過這樣的事情,有人知道為什么嗎?

應用程序.js:

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';

ReactDOM.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>,
  document.getElementById('root')
);

serviceWorker.unregister();

應用程序.js:

import React, { useState, useEffect } from 'react';
import { ClipLoader } from 'halogenium';
import {useSpring, animated} from 'react-spring'
import ComponentCentral from './components/componentCentral/ComponentCentral'
import './App.css';
import NavBar from './components/navbar/NavBar'
import Footer from './components/footer/Footer'

function App() {
    const estilo = useSpring({opacity: 1, from: {opacity: 0}})
    const [conteudoPage, setConteudoPage] = useState(<animated.div style={estilo}><ClipLoader className="loaderCircle" color="#26A65B" size="200px"/></animated.div>);
    const [usuario, setUsuario] = useState("");
    
    return (
        <div className="App">
            <NavBar usuario={usuario}></NavBar>
            {conteudoPage}
            <Footer></Footer>
        </div>
    );
}

export default App;

索引CSS:

html, body {
    padding: 0;
    margin : 0;
    width  : 100%;
    height: 100%;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
        'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
        sans-serif;
    -webkit-font-smoothing : antialiased;
    -moz-osx-font-smoothing: grayscale;

    background       : linear-gradient(-45deg, #85FFBD 0%, #FFFB7D 100%);
    /* background-size: 200%; */
}

#root{
    height: 100%;
}

code {
    font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
        monospace;
}

hr {
    border          : 0;
    height          : 1px;
    background      : #333;
    background-image: linear-gradient(to right, #ccc, #333, #ccc);
    margin-top      : 25px
}

a.envelopeOK:link,
a.envelopeOK:visited {
    background-color: #84F0B9;
    color           : #135D36;
    padding         : 14px 25px;
    text-align      : center;
    text-decoration : none;
    display         : inline-block;
    border-radius   : 5px;
}

a.envelopeOK:hover,
a.envelopeOK:active {
    background-color: #41f397;
}

我會發送發生的事情的圖片

身體形象限制

顯示重復漸變的圖像

你知道如何讓身體 100% 保持漸變不重復嗎?

編輯:

感謝所有幫助我的人,我統一了一些解決方案並設法解決了我的問題。 當我使用 react 時,我最終放置了許多嵌套的 div,我只設置了主體尺寸,而沒有讓我的其他 div 自行增長。 我的解決方案:僅在正文中放置默認填充和邊距 0 設置,並將所有高度和背景的擴展部分放置在正文的子 div 中:#root。 這樣,body 會隨着根 div 的增加而增加,並且隨着內容的生成而增加。

body {
padding: 0;
margin: 0;
}

#root {
min-height: 100vh;

font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;

background: linear-gradient (-45deg, # 85FFBD 0%, # FFFB7D 100%);
}

我檢查了你的代碼一切看起來都不錯! 這個代碼有什么用??

hr {
border          : 0;
height          : 1px;
background      : #333;
background-image: linear-gradient(to right, #ccc, #333, #ccc);
margin-top      : 25px
}

嘗試刪除它,看看會發生什么。

在正文中添加一個容器:

.container {
   height:100vh
}

由於我最終通過合並和測試工作人員的部分 css 來解決問題,因此我會將其留在編輯中,因為它已解決,謝謝大家!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM