Како променити боју текста чувара места у ХТМЛ пољима за унос користећи ЦСС

Како променити боју текста чувара места у ХТМЛ пољима за унос користећи ЦСС
Како променити боју текста чувара места у ХТМЛ пољима за унос користећи ЦСС

Обликовање текста чувара места помоћу ЦСС-а

Када радите са ХТМЛ обрасцима, можда ћете желети да прилагодите изглед текста чувара места у пољима за унос. Иако Цхроме в4 и други прегледачи подржавају атрибут чувара места на елементима инпут[типе=тект], једноставна примена ЦСС стилова на овај атрибут не функционише увек како се очекује.

На пример, покушај промене боје текста чувара места помоћу стандардних ЦСС селектора неће дати жељене резултате. Овај чланак истражује како можете ефикасно да измените боју текста чувара места користећи исправне ЦСС псеудоелементе и правила специфична за прегледач.

Цомманд Опис
::placeholder Псеудо-елемент у ЦСС-у који се користи за стилизовање текста чувара места у пољу за унос.
:focus Псеудо-класа у ЦСС-у која се користи за примену стилова када је елемент фокусиран, на пример када корисник кликне на поље за унос.
opacity ЦСС својство које поставља ниво транспарентности елемента. Овде се користи да би се осигурало да је текст чувара места у потпуности видљив.
DOMContentLoaded ЈаваСцрипт догађај који се покреће када је почетни ХТМЛ документ потпуно учитан и рашчлањен.
querySelector ЈаваСцрипт метода која враћа први елемент у документу који одговара наведеном ЦСС селектору.
addEventListener ЈаваСцрипт метода која прилаже руковаоце догађајима елементу без преписивања постојећих руковалаца догађаја.
setAttribute ЈаваСцрипт метода која поставља вредност атрибута за наведени елемент. Овде се користи за ажурирање текста чувара места.

Разумевање техника стилизовања текста чувара места

Прва скрипта користи ::placeholder, ЦСС псеудоелемент који посебно циља на текст чувара места у пољу за унос. Ово је кључно јер стандардни ЦСС селектори не утичу на текст чувара места. Коришћењем input::placeholder, можемо применити стилове директно на текст чувара места, као што је промена његове боје у црвену. Поред тога, скрипта укључује селекторе специфичне за прегледач, као што су input:-moz-placeholder за Мозилла Фирефок и input::-ms-input-placeholder за Интернет Екплорер и Мицрософт Едге. Ови селектори обезбеђују компатибилност у различитим прегледачима, омогућавајући да боја текста чувара места буде једнолично стилизована без обзира на избор претраживача корисника.

Друга скрипта користи ЈаваСцрипт за динамичку промену боје текста чувара места. Почиње са DOMContentLoaded догађај како би се осигурало да се скрипта покреће тек након што је почетни ХТМЛ документ потпуно учитан. Тхе querySelector метода се затим користи за одабир улазног елемента. Слушачи догађаја се додају овом елементу за управљање догађајима фокуса и замућења. Када поље за унос добије фокус, текст чувара места се брише, а боја текста за унос се поставља на црну. Када поље за унос изгуби фокус, текст чувара места се враћа, а његова боја је подешена на црвену. Тхе setAttribute метода се користи за динамичко ажурирање атрибута чувара места, обезбеђујући да се текст чувара места појави и нестане како се очекује.

Промена боје текста чувара места помоћу ЦСС-а

Коришћење ЦСС псеудоелемената

input::placeholder {
  color: red;
  opacity: 1; /* Firefox */
}

/* For Mozilla Firefox */
input:-moz-placeholder {
  color: red;
  opacity: 1;
}

/* For Internet Explorer 10-11 */
input:-ms-input-placeholder {
  color: red;
}

/* For Microsoft Edge */
input::-ms-input-placeholder {
  color: red;
}

Имплементација позадинске логике за руковање бојама текста чувара места

Коришћење ЈаваСцрипт-а за динамички стил чувара места

document.addEventListener("DOMContentLoaded", function() {
  var input = document.querySelector('input[type="text"]');

  input.addEventListener('focus', function() {
    input.style.color = "black";
    input.setAttribute('placeholder', '');
  });

  input.addEventListener('blur', function() {
    input.style.color = "red";
    input.setAttribute('placeholder', 'Value');
  });
});

Напредне технике за стилизовање чувара места

Осим основних ЦСС и ЈаваСцрипт метода, постоје напредније технике за стилизовање текста чувара места. Један такав метод је коришћење ЦСС променљивих за креирање динамичнијег система стилизовања. ЦСС променљиве, познате и као прилагођена својства, омогућавају програмерима да чувају вредности које се могу поново користити у листи стилова. Ово може да поједностави процес ажурирања стилова у више елемената. На пример, дефинисањем прилагођеног својства за боју чувара места, можете лако променити боју на једном месту без измене више ЦСС правила.

Други аспект који треба узети у обзир је употреба оквира и библиотека које нуде проширене могућности стилизовања. Библиотеке као што је Боотстрап и оквири као што је Таилвинд ЦСС пружају унапред дефинисане класе које могу помоћи у стилу елемената форме, укључујући чуваре места. Ови алати могу да уштеде време и обезбеде доследност у различитим деловима апликације. Поред тога, коришћење претпроцесора као што су САСС или ЛЕСС може додатно побољшати ЦСС са функцијама као што су угнежђење, миксини и наслеђивање, чинећи код лакшим за одржавање и скалабилнијим.

Често постављана питања о стилизовању текста чувара места

  1. Како могу да променим боју текста чувара места у свим прегледачима?
  2. Користити ::placeholder, :-moz-placeholder, :-ms-input-placeholder, и ::-ms-input-placeholder селектори како би се осигурала компатибилност у различитим претраживачима.
  3. Могу ли да користим ЈаваСцрипт за динамичку промену боје текста чувара места?
  4. Да, можете да користите ЈаваСцрипт да додате слушаоце догађаја за фокус и замућење догађаја, а затим да их користите setAttribute да промените текст чувара места и његову боју.
  5. Шта су ЦСС варијабле и како оне могу помоћи у обликовању чувара места?
  6. ЦСС променљиве вам омогућавају да складиштите вредности које се могу поново користити у листи стилова, што олакшава доследно ажурирање стилова у више елемената.
  7. Која је предност коришћења ЦСС претпроцесора као што су САСС или ЛЕСС?
  8. ЦСС претпроцесори нуде функције као што су угнежђење, миксинови и наслеђивање, које чине ЦСС код лакшим за одржавање и скалабилнијим.
  9. Могу ли оквири попут Боотстрап-а или Таилвинд ЦСС-а помоћи у обликовању чувара места?
  10. Да, ови оквири пружају унапред дефинисане класе које могу помоћи у стилу елемената форме, укључујући чуваре места, штедећи време и обезбеђујући доследност.
  11. Постоји ли начин да се анимира боја текста чувара места?
  12. Иако директна анимација текста чувара места није могућа, можете користити ЈаваСцрипт да промените текст чувара места и примените ЦСС прелазе на поље за унос за сличан ефекат.
  13. Могу ли да користим уграђени ЦСС за стилизовање текста чувара места?
  14. Не, инлине ЦСС не подржава псеудоелементе као што су ::placeholder. Морате да користите таблицу стилова или а <style> блок унутар ХТМЛ-а.
  15. Које су уобичајене замке приликом стилизовања текста чувара места?
  16. Уобичајене замке укључују неуважавање компатибилности међу претраживачима, заборављање укључивања непрозирности за Фирефок и некоришћење исправних псеудоелемената или селектора специфичних за претраживач.

Завршна размишљања о техникама стилизовања чувара места

Промена боје текста чувара места у ХТМЛ пољима за унос захтева комбинацију ЦСС и ЈаваСцрипт решења. Коришћење ЦСС псеудоелемената и селектора специфичних за прегледач обезбеђује компатибилност, док ЈаваСцрипт омогућава динамичке промене на основу интеракција корисника. Напредне технике као што су ЦСС варијабле, оквири и претпроцесори могу додатно побољшати процес стилизовања, чинећи га ефикаснијим и одрживијим. Савладавање ових метода омогућава бољу контролу над естетиком форме, побољшавајући корисничко искуство.