|
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 410
|
||||||||||||||||
Почему при изменении значения переменной css изменение происходит только в первом блоке24.09.2025, 10:47. Показов 1122. Ответов 12
Метки нет (Все метки)
Будьте добры, проблема указана в заголовке - в примере при нажатии на кнопку изменяется только первая область (блок):
0
|
||||||||||||||||
| 24.09.2025, 10:47 | |
|
Ответы с готовыми решениями:
12
Смещение внутри блока, другого блока, без изменения первого Почему так происходит с блоками div Изменение в одном блоке при нажатии в другом блоке |
|
Заблокирован
|
|||
| 24.09.2025, 11:03 | |||
querySelectorAll
0
|
|||
| 24.09.2025, 11:16 | |
|
К тому же несколько странное применение переменных css. Зачем так "сложно"?
Т.е. вариантов несколько: 1. Не совсем красивый т.к. вы в логику зашиваете дизайн. просто ставить font-size = 24px без переменной 2. Оперировать именно стилями. Т.е. например присваиваете класс конкретному элементу или родителю (зависит от решаемой задачи) типа 'edited' и в стилях уже задаете визуальное представление. Таким образом у вас будет разделено дизайн и логика. Т.е. вы просто сообщаете что элемент имеет состояние "отредактирован" (или что вам там нужно) за счет добавление css класса. а уже стилями описываете как должен выглядеть элемент в таком состоянии. (в т.ч. позволит и более гибко управлять дизайном: от размера экрана, при выводе на печать, от системной темы темной/светлой, да и вообще внедрить "темы"..... У вас же, в случае редизайна, придется еще и все скрипты перепахивать.
1
|
|
|
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 410
|
|
| 24.09.2025, 11:46 [ТС] | |
|
И, комментируя первый ответ, вопрос такой: можно ли изменить локальную переменную у класса без поиска каких-либо существующих на странице элементов?
Добавлено через 19 минут voral, спасибо большое за ответ и советы. Использование переменных мне нравится, правда возможно из-за недостатка практического опыта. Как раз в частности и в первую очередь потому, чтобы задать единые параметры сайта. Но это глобальные переменные. Есть и другие причины (возможно и решаемые иначе и лучше), но о них не хотел бы рассуждать публично до запуска сайта. Возможно в данному случае можно было бы обойтись и без локальной переменной, а только стилями (но мне данное решение пришло в голову первым). Может быть имеет смысл привести пример, в связи с которым и возникла данная проблема?
0
|
|
|
Заблокирован
|
|||||||
| 24.09.2025, 11:50 | |||||||
![]()
0
|
|||||||
|
3841 / 1690 / 432
Регистрация: 14.03.2022
Сообщений: 4,302
|
||||||||
| 24.09.2025, 12:00 | ||||||||
![]()
1
|
||||||||
|
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 410
|
||||||||||||||||
| 24.09.2025, 15:28 [ТС] | ||||||||||||||||
|
krvsa, спасибо, странно - но работает. Действительно, результат тот, что надо.
Но уж очень громоздко выглядит конструкция (не ожидал) - глобальные переменные меняются намного проще. Добавлено через 3 часа 7 минут
Пример рабочий, но прошу прощения, если где-то что-то некрасиво - переносил из рабочего кода и только сейчас начал заниматься и дизайном. voraa ранее высказался, что <a> ни к месту в таком назначении. За основу брался чужой пример, других альтернатив не было и меня вполне устраивала данная технология - в силу небольшой значимости данного кода, не так уж и важно, как будет он реализован на первом этапе. Но раз уж вынес на обсуждение и если кто-то предложит что-то лучшее, почему бы и нет. Нужно было скрыть показ комментариев. Вот что у меня получалось - при отказе от вывода комментариев (его имитирует кнопка) переменная изменялась, но почему-то только для первого элемента, а не всех блоков с данным классом (решение krvsa подсказал, за что еще раз спасибо, но возможно есть и более интересное)
0
|
||||||||||||||||
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
|||||||
| 24.09.2025, 15:35 | |||||||
0
|
|||||||
|
3841 / 1690 / 432
Регистрация: 14.03.2022
Сообщений: 4,302
|
|||
| 24.09.2025, 15:41 | |||
|
Добавлено через 1 минуту
0
|
|||
|
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 410
|
|||
| 24.09.2025, 16:17 [ТС] | |||
|
Спасибо всем за помощь. Разобрался с вашей помощью. Осталось только решить, что лучше: переменные менять или классы добавлять. Классы добавляю/удаляю, но пока не убедили, что надо поступать так всегда - если есть переменные, зачем плодить еще и классы. Единственный аргумент от voral, "У вас же, в случае редизайна, придется еще и все скрипты перепахивать." может перевесить. Но в данном случае при редизайне затрагивается только одна функция, а это уже не проблема. Добавлено через 5 минут
0
|
|||
| 24.09.2025, 16:51 | ||
|
Вы строите свое решение на галимых костылях. И если вы намереваетесь этим решением (которое создаете) пользоваться и развивать. То это ваше нагромождение рано или поздно будет вас бить полбу. т.к. простейшая правка (или исправление найденного бага) будет занимать у вас время исчисляемое неделями, там где даже с поверхостными знаниями, можно было бы решить за час. И по мере разрастания все будет становиться только хуже. Тем более, гарантирую, отвлечетесь от проекта на полгодика - и вы уже забудете, что и как. И разобраться будет максимально сложно. Даже с помощью форума. А баги у вас будут просто гарантированно. (плюсом к "типичным" багам разработчика у которого не так много опыта)...
1
|
||
|
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 410
|
||
| 24.09.2025, 17:30 [ТС] | ||
|
Иногда не соглашаюсь с кем-то, но но вижу для этого причины. Ваше утверждение: " гарантирую, отвлечетесь от проекта на полгодика - и вы уже забудете, что и как." - думаю, оно ошибочно. И вот почему. Уже отвлекался от проекта минимум на 4 месяца (взялся за другой проект, программу документирования своего кода. Ошибся, решив что за 2 месяца большую часть напишу). Через 4 месяца вернулся, потребовалась пара дней, чтобы опять вникнуть в проект. И это при том, что очень мало комментировал код. А по поводу правки. Когда-то писал бухгалтерию чисто для себя. И даже через год не было проблем что-то изменить или добавить. Конечно не всегда так. Может изменение одного потянуть другие ошибки - было и такое не так давно, что признаюсь меня сильно удивило, но видимо потерял навыки. На самый же главный вопрос - будет ли все написанное практически работать ответит только время.
0
|
||
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
||||||
| 24.09.2025, 19:43 | ||||||
|
А вот был еще случай (с)
![]() На мой взгляд изменение переменной CSS из скрипта иногда может быть (может и не единственным) но эффективным и красивым решением. Вот пример (на основе реальной ситуации)
Смысл в том, что бы при изменении масштаба не менялись толщины линий. Они должны оставаться такими же, как при начальном масштабе 1:1 В реально проекте всяких прямоугольников окружностей и линий могло быть больше сотни, и разных классов. Более простого решения я не нашел.
0
|
||||||
| 24.09.2025, 19:43 | |
|
Помогаю со студенческими работами здесь
13
Почему на сайте не отображаются изменения, сделанные в CSS Почему при изменении font-size тормозит страница?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|