Jump to content
  • 0

Динамическое изменение индикации, через соседние селекторы.


Launder
 Share

Question

Решил поэкспериментировать с динамическим изменением индикации, вот по этому заданию. Как мне казалось, это реально: стили для любого значения параметра загружаются сразу, изменяется параметр - сразу применяются стили, соответствующие новому параметру. Но почему-то эта "динамика" работает, только для параметра, заданного по-умолчанию. Почему стили не применяются к изменённому параметру? Какова тут логика работы и возможно ли подобное, сделать на чистом CSS? Спасибо.

PS: ну и до кучи - буду рад инфе, как стилизовать input type='number '?

 

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 1

Как бы это объяснить... hover,checked и т.п. это состояния элемента в зависимости от состояния - применяются стили.

value это атрибут элемента в дом дереве, а оно само не перестраивается. Если бы вы при изменении его значения удаляли старый элемент и вставляли на его место новый с новым значением - стили бы применились.

1 час назад, Launder сказал:

С ними и возникнет.

Это легко решается при помощи js.

  • Like 1
Link to comment
Share on other sites

  • 0

Стили увас загрузились один раз, применились к параметру по умолчанию, дальше никаких операций с ними не происходит. Вот если бы вы в зависимости от значения value изменяли стили или добавляли/удаляли классы с помощью js, то все бы работало.

Стилизовать инпут с помощью css конечно можно, но возникнет трудность со стилизацией стрелок. Удалить их конечно можно, но вот сделать вместо стандартных свои, да так что бы они работали можно только добавив js

Link to comment
Share on other sites

  • 0
21 час назад, AlexZaw сказал:

Стили увас загрузились один раз, применились к параметру по умолчанию, дальше никаких операций с ними не происходит.

Вот это меня и удивляет ? Допустим в коде:

a { color: blue }
a:hover { color: green }
a:active { color: red }

или тут:

input:checked + label
{ background: white; }

стили применились к параметрам по-умолчанию, но поменялись параметры - поменялись стили. во втором примере, тот же input, правда другого типа. Но поскольку стили для изменённых параметров уже загружены и селекторы, для их идентификации, есть во всех случаях, я не понимаю, в чём принципиальная разница, между тем, что приведено в заголовке темы, и приведёнными выше примерами. ведь значение value меняется с помощью самого браузера! что ему сложно применить уже загруженные стили для изменённого значения? если да, то в чём сложность или где тут несоответствие?

21 час назад, AlexZaw сказал:

Стилизовать инпут с помощью css конечно можно, но возникнет трудность со стилизацией стрелок.

С ними и возникнет.

Link to comment
Share on other sites

  • 0

Ну в общем, вывод прост - учить DOM и JS. В процессе ? Возможно, после изучения, стану лучше понимать CSS, поскольку теоретически, мне тут не всё ясно...

Edited by Launder
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Kasl68
      Не могу значение с одного поле на другой, через  JavaScript. Помогите пожалуйста!
      <!DOCTYPE HTML> <html lang="kz"> <head>     <meta charset="utf-8"> <title> ВЫВОД </title> </head> <body>    <input type="text" name="Vvod" value="Пример" placeholder="введите имя"> <input type="text" name="Vyvod"> <br> <input type="submit"></button> <br> <script type="text/javascript">     function submit() {     let Vvod=document.getElementsByTagName('Vvod');     Vyvod.value=Vvod;     console.log(Vyvod.value);     } </script>   </body> </html>  
    • By garmoni
      Нужно сверстать переключатели input radio в виде блоков. (Размер M, L, XL, XXL)
      Изначально при выборе блока, все работало, менялся цвет. Теперь перестало работать и не могу найти причину. Вставляю часть кода в https://jsfiddle.net/
      все работает. На локальном и хостинге нет. Ссылка на сайт
      http://garmoni.inf.ua/Brandly/
      в самом низу
       
       
       
    • By kirillov
      Добрый день. Написал сайт и встречается такая проблема на устройствах от apple (конкретно Iphone 5). В форму заявки в поля input не вводятся никакие символы. Посоветуйте пожалуйста. Спасибо.
    • By JackPeralta
      Здравствуйте. Начал изучать HTML день назад.Теперь у меня вопрос.
      <input type=text name"info" size=20>
      Как введенные данные в эту строку,вывести на другом HTML?
      Спасибо, жду ответов от всех.
    • By JeraxXai
      столкнулся с такой проблемой, имеем форму <form action="action.php" method="POST"> ,в ней находятся около 130 чекбоксов, все в разных divах, чекбоксы имеют вид 
      <label><input type="checkbox" name="id_1" class ="list" value ="#EXTINF:0,UA:Перший http://puuuuruuuu.ps/pershiy/mpegts"> <span class="spanchik"> <img title="UA:Перший / Эра" data-id="1" alt="UA:Перший / Эра" src="images/inf/1pershiy.png" style="max-width: 100%;max-height: 90%;width:auto;"> </span> </label> у каждого чекбокса свой name="id_1" , "id_2" и по нарастающей. Так к чему я веду, сколько гугла не перегуглил, не могу найти информацию о том, как сделать кнопки, или чекбоксы, которые будут отмечать к примеру первые 20 чекбоксов, далее другие 20 чекбоксов, вплоть до последнего div a 
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy