Mając wymaganie od Zeplina, muszę mieć obraz po lewej stronie ekranu i aby był responsywny, do tej pory nie udało mi się go dostosować i będę potrzebował pomocy we właściwym kierunku, wstawię obraz co mi się udało.

My screen work

Zeplin Requirements

Wkleję kod mojego css

.sign-in-image {
  width: 40%;
  height: 100vh;
  float: left;
  border: solid 1px #979797;
  background-repeat: no-repeat;
  background-size: contain;

Mój Zarejestruj się kod reakcji

const SignIn = () => (
<div className="sign-in">
    <div className="image-container">
        <div className="sign-in-image" style={{ backgroundImage: `url(${signin})` }} src = {signin} alt="logo" />
    </div>
    <div className="right">
        <input  className='textField' placeholder="Username" />
        <input  className='textField' placeholder="Password" />
        <button type="button" className='signIn'>sign in</button>
        <p className='forgot'>Forgot username or password</p>
        <p className='signUp'>Don’t have an account? Sign up</p>
    </div>  
</div>
)

export default SignIn;

Css

.sign-in-image {
  width: 40%;
  height: 100vh;
  float: left;
  border: solid 1px #979797;
  background-repeat: no-repeat;
  background-size: cover;
}

.right{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;

}

.textField{
  height: 47px;
  width: 600px;
  outline: 0;
  border-width: 0 0 2px;
  border-color: #f1f1f1;
  margin-top: 44px;
  text-align: center;
  border-bottom:thin dashed grey;


}

.textField::placeholder{
  width: 600px;
  height: 47px;
}

.signIn{
  width: 100px;
  height: 48px;
  border-radius: 24px;
  background-color: #f1316b;
  color: #fff;
  margin-top: 45px;
  border: 0;
}

.forgot{
  font-size: 18px;
  font-weight: normal;
  font-stretch: normal;
  font-style: italic;
  line-height: normal;
  letter-spacing: normal;
  color: #2e1150;
  font-family: 'Nunito';
  margin-top: 60px;
  width: 241px;
  height: 24px;
}

.signUp{
  font-size: 20px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #2e1150;
  margin-top: 187px;
}


@media only screen and (max-width: 768px){
  .sign-in-image {
    width: 60%;
    height: 100vh;
  }
}

@media only screen and (max-width: 640px){
  .sign-in-image {
    width: 60%;
    height: 100vh;
  }
}

Mam nadzieję, że ktoś może poprowadzić mnie we właściwym kierunku, aby reagować bez zjadania obrazu. Dziękuję

1
SImon Haddad 20 listopad 2019, 13:14
Zapewnienie minimalnego działającego kodu bardzo pomaga.
 – 
Awais
20 listopad 2019, 13:37
CSS? Wkleiłem działający kod wraz z obrazem tego, co zostało pokazane? Mam przerwę w obrazie
 – 
SImon Haddad
20 listopad 2019, 13:41
Mówiąc też o Twoim html. Użyj fragmentu kodu przepełnienia stosu
 – 
Awais
20 listopad 2019, 13:44
Napisałem kod, mam nadzieję, że możesz mi pomóc
 – 
SImon Haddad
20 listopad 2019, 14:03
Czy można użyć tagu obrazu <img> zamiast background-image
 – 
Awais
20 listopad 2019, 14:22

1 odpowiedź

Możesz użyć zapytań o media:

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {...}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {...}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {...}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {...}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {...}

Zastosuj swój CSS odpowiednio dla odpowiedniego urządzenia lub szerokości.

0
Omi kabira 20 listopad 2019, 13:25