CSS үчүн @import жана шилтеме эмне айырмасы бар?

желеде олтургандарды карагылачы алынып, ар түрдүү интернет баракчалардын кодун көрүп калса, сиз байкаган бир нерсе ар кандай сайттар ар кандай жолдор менен өздөрүнүн тышкы CSS материалдары кирет деген - бул @import ыкманы колдонуу же бул шилтеме аркылуу CSS билэ. Эгер силер үчүн андан да жакшы бир чечим үчүн CSS үчүн @import жана шилтеме ортосундагы айырма эмнеде жана кантип? Бир карап чыгалы!

Difference ортосунда & # 64; Импорт жана & LT; шилтеме & GT;

Сиздин стилдерди кирет үчүн колдоно турган ыкмасы алардан мурун эки ыкмалары боюнча пайдалануу үчүн арналган кандай түшүнүү керек.

<шилтеме> - байлоо Желе беттериндеги тышкы стилдердин баракты, анын ичинде алгачкы ыкмасы болуп саналат. Бул стилдин менен сайтты бири-бири менен байланыштырууга арналган. Бул сыяктуу HTML документтин <башына> кошулат:

<Шилтеме Гуппи "styles.css" Отчёттун = "стилдер">

@import - импорттоо башка бир стилдер жадыбалы импорттой мүмкүнчүлүк берет. Эгер байланган стилдер жадыбалы ичинде стилдерди импорттасаныз болот, анткени бул, ссылка жагдайда да бир аз башкача. Сиз HTML документтин башына бир @import камтый турган болсо, анда ал мындай деп жазылган:

<Стили түрү = "текст / CSS"> @ импорт нускага ( "styles.css");

бир стандарттар көз караш менен караганда, сырткы стилдин байланышкан же аны алып келүү ортосунда эч кандай айырма жок. Бул жолу туура эмес, эки жолу бирдей эле иштейт (көпчүлүк учурда). Бирок, башка бирин колдонууну каалаган бир нече себептер бар.

Эмне үчүн & # 64; импорттоо?

Көп жыл мурун, ордуна @import пайдалануу үчүн берилген таралган себеби (же аны менен бирге) <шилтеме> улгайган браузерлер, анткени @import таанышкан жок, ошондуктан, алардын стилин жашыра албай. Сиздин стилдерди алып келүү менен, сиз улуу браузердин котормолорунда алар "жашынып", ал эми олуттуу заманбап, стандарттар ылайык браузерлерде аларды жеткиликтүү болот.

гана документтин <башына> бир байланышты, анын ичинде, ал эми @import ыкмасы үчүн дагы бир пайдалануу, бир беттеги нече стилдерди пайдаланган болуп саналат. Мисалы, бир ААКынын суб-бөлүктөрү гана суб-бөлүккө карата кошумча стилдерди ээ болгон менен, сайтка ар бир бетине үчүн глобалдык стилдер жадыбалы болушу мүмкүн. ички бөлүмдү ачуу стилдин менен байлоо жана бул стилдин барагынын жогору дүйнөлүк стилде алып келүү менен, эгерде, сиз сайтта ар бир суб-бөлүмүндө үчүн бардык стилде менен гигант стилдер жадыбалы сактоого жок. гана талап кандайдыр бир @import эрежелерине эрежелери калган чейин келүүгө аракет керек. Ошондой эле, бир нерсени унутпашыбыз шектенбесек болот мурасын дагы бир көйгөй болуп калышы мүмкүн.

Эмне үчүн & лт; шилтеме & GT ;?

байланган стилдер барактарды колдонуу үчүн саны бир себеби сиздин кардарлар үчүн кошумча стилдерди камсыз кылуу болуп саналат. Firefox сыяктуу браузерлер, Safari, жана опера Отчёттун = "кошумча салынган" касиетти колдоо жана көрүүчүлөр аларды алмаштырууга жол жатканда ошол жерде бир жеткиликтүү. Ошондой эле IE-жылы кошумча стили арасында которулуу үчүн JavaScript которгучун колдоно аласыз. Бул абдан көп колдонулат Zoom Layouts мүмкүнчүлүктөр максатында.

@import жардамы менен бир кемчилик, аны менен жөн гана @import эреже менен абдан жөнөкөй <башын> болсо, барактын бир "unstyled мазмундагы жарк" мүмкүн (Лакан) алар жүктөлүүдө деп саналат. Бул сиздин көрүүчүлөргө жагымсыз болушу мүмкүн. Бул жөнөкөй катталган сиз <башына> менен, жок дегенде, бир кошумча <шилтемени> же <жазуусу> элементке ээ камсыз кылуу болуп саналат.

Медия Түрү жөнүндө эмне айтууга болот?

Көптөгөн жазуучулар Улууларды браузерлерде келген стилдерди жашыруу үчүн медиа түрүн колдоно аласыз билдирүү жасайт. Адатта, алар @import же <шилтемени> же пайдалануу үчүн пайда катары айтып, бирок, чындык силерди медиа ыкма менен да түрүн, жана улгайган браузерлерде медиа түрлөрүн колдоого албайбыз коюуга болот же учурда аларды жок кылат .

Ошентип, кайсы методу Сиз пайдаланышыбыз керек?

Чындап келгенде, мен бүгүн көпчүлүк дизайнерлер окшоп <шилтемени> анан менин сырткы стилдердин салып стилдерди импорттасаныз, колдонууну каалашат. Менин HTML документтерде өзгөртүүгө Бул жолу мен бир гана кодексинин 1 же 2 саптар бар. Бирок Жыйынтык силерге чейин деп эсептелет. Сиз @import менен жакшы болсо, анда ал үчүн барып! чын эле эски браузерлерге колдоого пландап жатабыз, эгерде эки ыкмалар ылайык жана нормалары, же пайдалануу үчүн эч кандай күчтүү бир себеп жок.

Jeremy Джирард тарабынан 2/7/17 күнү өзгөртүлдү