Direktiva @media në SASS

Në SASS, direktiva @media zbatohet njëlloj si rregulli përkatës në CSS. Dhe gjithashtu mund të futet drejtpërdrejt në të gjitha rregullat CSS. Duhet theksuar se, në rastin kur ne e fusim directivën @media brenda një rregulli CSS, pas kompilimit ajo ngrihet lart mbi tabelat e stileve, dhe përzgjedhësit, brenda të cilëve ishte vendosur direktiva, zhvendosen brenda @media. Nisur nga kjo, mund të shtoni rregulla në direktivën @media pa përsëritur përzgjedhësit ose shkelur rrjedhën e tabelës së stileve.

Le të shqyrtojmë një shembull:

style.scss.navbar {
  gjerësia: 400px;
  @media picture and (orientation: portrait) {
    gjerësia: 300px;
    lartësia: auto;
  }
}

Tani le të shohim rezultatin e kompilimit:

style.css.navbar {
  gjerësia: 400px; 
}
@media picture and (orientation: portrait) {
  .navbar {
    gjerësia: 300px;
    lartësia: auto; 
  } 
}

Ekziston gjithashtu mundësia për të futur kërkesa @media njëra brenda tjetrës, dhe pas kompilimit ato lidhen me operatorin and:

style.scss@media div {
  .picture {
    @media (orientation: portrait) {
      gjerësia: 200px;
    }
  }
}

Ja çfarë do të shohim pas kompilimit:

style.css@media div and (orientation: portrait) {
  .picture {
    gjerësia: 200px; 
  } 
}

Një veçori tjetër e direktivës @media është se me ndihmën e saj mund të transmetohen ndryshore, funksione dhe operatorë:

style.scss$media: style;
$feature: -webkit-max-device;
$value: 3.0;
    
@media #{$media} and ($feature: $value) {
  div {
    ngjyra: e kuqe;
  }
}

Dhe në skedarin style.css marrim kodin e mëposhtëm:

style.css@media style and (-webkit-max-device: 3) {
    div {
      ngjyra: e kuqe; 
    } 
}
Задание 1

Tregoni, si do të jetë rezultati i kompilimit të kodit të mëposhtëm:

styles.scss.active-link {
  ngjyra: blu;
  @media content {
    madhesia-e-shkronjave: 14px;
    zbukurim-i-tekstit: nënvijim;
  }
}
Задание 2

Tregoni, si do të jetë rezultati i kompilimit të kodit të mëposhtëm:

styles.scss@media p {
  #product-card {
    @media (font-family: Arial) {
      madhesia-e-shkronjave: 12px;
    }
  }
  #product-card-title {
    @media (font-family: Arial) {
      madhesia-e-shkronjave: 14px;
      pesha-e-shkronjave: e-trashë;
    }
  }
}
Задание 3

Tregoni, si do të jetë rezultati i kompilimit të kodit të mëposhtëm:

styles.scss$var: link;
$font: font-size;
$size: 10px;
    
@media #{$var} and ($font: $size) {
  .block {
    ngjyra: e kuqe;
  }
}