CSS Problema con le media queries

alcatrak

Utente Electrum
21 Marzo 2017
351
40
96
178
Salve ragazzi, eccomi tornato qua con un nuovo problema. Vi spiego la situazione, sto facendo un sito web e ho iniziato a programmarlo da pc, quindi adattando tutto a quello schermo. Ora sto iniziando ad adattarlo a schermi con un width minore, quindi ho iniziato a prendere le misure facendo cambiare colore alle scritte di una classe, e fin qui tutto bene. Ora il mio intento era di diminuire il font-size all'interno di una classe, ma non funziona!! Non cambia nemmeno colore quindi immagino che il problema sto nella classe. Ecco il codice:
HTML:
<!doctype html>
<html>
<head>
<title>sito</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/index.css">
</head>
<body>
  <div class="navbar">
    <div class="font1">
      <a href="html/aboutme.html">ABOUT ME</a>
    </div>
    <div class="font1">
      <a href="html/portfolio.html">PORTFOLIO</a>
    </div>
    <div class="font1">
      <a href="html/info.html">INFO</a>
    </div>
  </div>
</body>
</html>
CSS:
@media only screen and (max-width: 1350px) {
  .font1 {
    font-size: 20px;
  }
}

.navbar {
  padding-top: 30px;
}

.font1 {

    font-family: Trebuchet MS,Georgia,sans-serif;
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 20px;
    display: inline-block;
    text-align: center;
    margin: 2%;
    padding-bottom: 10px;
    width: 370px;
    text-transform: uppercase;
}

.font1:hover {
  color: #00b888;
}

.font1:after {
  display: block;
  content: '';
  border-bottom: solid 5px #00b888;
  transform: scaleX(0);
  transition: transform 250ms ease-in-out;
  transform-origin: 50% 50%;
}

.font1:hover:after {
  transform: scaleX(1);
  transform-origin: 50% 50%;
}
 
Prova a mettere la query dopo il CSS di base :rulz:

Le regole css vengono lette in ordine di scrittura e il loro override avviene nella stessa direzione.
Questo vuol dire che se ho due regole che agiscono sullo stesso elemento e anche sulla stessa proprietà (esempio il colore del font o la sua grandezza), varrà quella che è stata scritta dopo. (proprio per una questione di sovrascrittura)
 
Ultima modifica:
Niente non funziona! La sapevo quella regola ma ho pensato che essendo una query non cambiava niente...
Messaggio unito automaticamente:

Upp
 
Ultima modifica:
Non va! Ti scrivo!!
Messaggio unito automaticamente:

Ragazzi, ho risolto! Grazie al gentile aiuto di @Informaticage :ruloz:

Ho messo !importante dopo aver definito il font size in pratica font-size: 20px !important; e la query l'ho messa alla fine!!
Chiudo, ciaoo
 
  • Mi piace
Reazioni: Informaticage
Mettere !important non è una buona pratica, va fatto solo in casi specifici.
Se hai bisogno di quella keyword è perchè hai sbagliato ad utilizzare i selettori, solitamente si usa per fare un override della proprietà quando il selettore ha una specificità minore della regola che è già attiva.

Comunque non capisco cosa non ti stia funzionando, come ho suggerito prima funziona alla perfezione.

Eccoti un esempio: https://jsfiddle.net/Kolo93/nLtj75ez/2/

Se vuoi vedere i risultati su 1350px di width, devi ridimensionare la finestra bianca in basso a destra.
 
  • Mi piace
Reazioni: alcatrak
Mettere !important non è una buona pratica, va fatto solo in casi specifici.
Se hai bisogno di quella keyword è perchè hai sbagliato ad utilizzare i selettori, solitamente si usa per fare un override della proprietà quando il selettore ha una specificità minore della regola che è già attiva.

Comunque non capisco cosa non ti stia funzionando, come ho suggerito prima funziona alla perfezione.

Eccoti un esempio: https://jsfiddle.net/Kolo93/nLtj75ez/2/

Se vuoi vedere i risultati su 1350px di width, devi ridimensionare la finestra bianca in basso a destra.
Ma non so, ora ho tolto !important e funziona, prima nonostante lo avevo messo sotto la query non funzionava. Comunque mo li ho tolti tutti e va.:rulz: