Ответы пользователя по тегу HTML
  • Для чего был сделаны исключения в элементах?

    Stalker_RED
    @Stalker_RED
    Возможно в этом учебнике также написано, что тег <p> - это сокращенно paragraph, и он не может быть строчным, соответственно. Если не написано, то возможно учебник слабоват. Посмотрите в оглавлении, есть ли там что-нибудь про html семантику. Например про то, что button - элемент формы, и особым образом обрабатывается браузерами.

    Вообще да, с применением скриптов и стилей можно большую часть тегов сэмулировать на основе других тегов. Можно пойти дальше, и свой браузер написать. В конце концов в современном хроме можно запустить виртуальную машину со свой OS (тыц), внутри которой можно запустить еще один браузер. Осталось только выяснить зачем это все делать и кто будет платить зарплату за то, что вы изобретаете какие-то альтернативные теги вместо того, чтобы пользоваться стандартными, которые умеет большинство браузеров.

    Что такое строчно-блочный - непонятно. Вы про inline block?
    Ответ написан
    Комментировать
  • Можно ли загружать видео на страницу с облака?

    Stalker_RED
    @Stalker_RED
    Лей на Ютуб, ставь на сайт любой альтернативный плеер, (например plyr), и отключай показ ссылок
    Ответ написан
    Комментировать
  • Как найти текст в браузерной игре?

    Stalker_RED
    @Stalker_RED
    На странице var app = ... там json с экранированными символами, которые при расшифровке дают вот такие тексты:
    "localization": {
        "agree_error": "Пожалуйста, подтвердите соглашения",
        "wrong_data": "Вы ввели неверные данные",
        "common_error": "Произошла ошибка, пожалуйста, обратитесь в службу поддержки",
        "not_spoofer_error": "Ошибка!",
        "not_spoofer_goto": "Зайдите в игру по этой ссылке",
        "social_invite_friends_dialog": "Приходи играть",
        "payment_window": "Окно оплаты",
        "restore_pass": "Инструкции по изменению пароля будут отправлены на указанный вами электронный адрес.",
        "pass_empty": "Введите пароль",
        "consent_success": "Изменения успешно сохранены!",
        "consent_error": "Не удалось сохранить изменения, попробуйте позже",
        "account_enter_pin": "На почтовый ящик %email% был отправлен отправлен PIN. Если письмо не пришло, проверьте папку \"спам\"",
        "feedback_common_error": "Произошла ошибка, пожалуйста, обратитесь в службу поддержки",
        "lp.interact.code_reask_succeded": "Новый код отправлен",
        "lp.interact.days_short": "д",
        "lp.interact.hours_short": "ч",
        "lp.interact.minutes_short": "м",
        "lp.interact.realm_ready": "Играть сейчас!",
        "errors.email_empty": "Заполните поле email",
        "errors.email_wrong": "Некорректный email",
        "errors.phone_empty": "Заполните телефон",
        "errors.phone_invalid": "Некорректный телефон",
        "lp.email_gather.application_received": "Заявка получена!",
        "download_email.success": "Инструкция по установке была выслана на %email%",
        "account.new_game_button": "Удалить",
        "account.new_game_success": "Игровой прогресс удален, обновите страницу",
        "account.new_game_success_reload": "Обновить",
        "account.new_game_wrong_input": "Вы ввели неверные данные",
        "ecommpay.button_to_retry": "Повторить попытку",
        "restore_form.try_again": "Повторить",
        "webgl.client_memory_allocation_error": "Игра не смогла выделить память. Закройте, пожалуйста, все вкладки или попробуйте другой браузер",
        "webgl.client_request_502_error": "Что-то пошло не так, попробуйте перезагрузить страницу",
        "payments.error_unavailable": "Платежи временно недоступны",
        "payments.error_retry": "Повторить",
        "faketutor.dialog.greeting.continue": "Продолжить",
        "payment_methods.web.googleplay_card": "Использование платёжного метода Google Pay без привязки банковской карты невозможно. Пожалуйста, сохраните данные карты в вашем браузере и повторите попытку.",
        "payment_methods.web.applepay_card": "Использование платёжного метода Apple Pay без привязки банковской карты невозможно. Пожалуйста, сохраните данные карты в кошельке Apple Wallet и повторите попытку.",
        "cookies.groups.names.statistics": "Статистика",
        "cookies.groups.names.strictly_necessary": "Строго необходимые",
        "cookies.groups.text.strictly_necessary": "Необходимые файлы cookie помогают улучшить пользование сайтом, обеспечивая работу основных функций, вроде навигации по страницам и доступа к безопасным областям сайта. Без этих файлов сайт не сможет нормально функционировать.",
        "cookies.groups.text.statistics": "Статистические файлы cookie позволяют владельцам сайтов узнавать как посетители взаимодействуют с сайтом, анонимно собирая и передавая информацию.",
        "cookies.groups.buttons.accept": "Принять",
        "cookie.warning_text": "Наш сайт использует файлы cookie для вашего удобства. Продолжая использовать наш сайт, вы подтверждаете свое согласие на получение таких файлов. Вы можете ознакомиться с нашей %Политикой конфиденциальности% в отношении файлов cookie и аналогичных технологий.",
        "cookies.groups.names.title": "Управление параметрами содержимого",
        "cookies.groups.buttons.active": "Всегда активно",
        "cookies.groups.names.show_text": "варианты просмотра",
        "no_browser_webgl_support": "Ваш браузер не поддерживает WebGL.",
        "check_faq_for_webgl_issues": "Посетите %link% для поиска решений возможных проблем.",
        "ecommpay.button_pay": "Оплатить",
        "ecommpay.button_back": "Назад",
        "stripe.enter_card_data": "Ввод данных карты",
        "stripe.secure_card_text": "Безопасная оплата картой",
        "stripe.card_number": "Номер карты",
        "stripe.card_date": "ММ/ГГ",
        "stripe.agreement_text": "Нажимая кнопку \"Оплатить\", вы принимаете %Соглашение о хранении идентификационных данных владельца карты%.",
        "stripe.savedcards_text": "Сохранённые карты",
        "stripe.clear_text": "Очистить",
        "stripe.sure_text": "Вы уверены?",
        "dpd_cancel_button": "Отменить",
        "keyin2tables.cookie_warning.Ok": "Хорошо",
        "password_strength.0": "Очень ненадежный пароль",
        "password_strength.1": "Слабый пароль",
        "password_strength.2": "Средний пароль",
        "password_strength.3": "Хороший пароль",
        "password_strength.4": "Очень надежный пароль",
        "preloader_video.unmute": "Включить звук",
        "preloader_video.mute": "Выключить звук",
        "support.emptySubject": "Пожалуйста, введите тему сообщения",
        "support.emptyBody": "Пожалуйста, введите описание проблемы",
        "support.emptyType": "Пожалуйста, выберите тип проблемы",
        "support.emptyEmail": "Пожалуйста, введите email",
        "support.wrongEmail": "Некорректный email",
        "support.common": "Неизвестная ошибка!",
        "restore_form.wait_30": "Нельзя запрашивать восстановление чаще чем раз в 30 секунд",
        "account.new_game_confirm_prompt": "Напишите \"DELETE\" в поле для подтверждения"
      },

    Остальное, боюсь, в других файлах, которые подгружаются отдельными запросами.
    Ответ написан
    Комментировать
  • В чём ошибка в коде?

    Stalker_RED
    @Stalker_RED
    Потому что когда начинается for переменная i=6, а элемента s[6] у вас нет.

    Код сильно переусложнен. Однобуквенные переменные - зло, сбивают с толку.
    Переменная i участвует аж в трех циклах, тоже плохо.

    addEventListener внутри цикла. Хорошо, что сейчас этот цикл сломан :)

    Вот это вы пытались сделать?
    Ответ написан
    Комментировать
  • Как поменять вывод списков?

    Stalker_RED
    @Stalker_RED
    Ответ написан
    Комментировать
  • Как сделать смену текста при нажатии?

    Stalker_RED
    @Stalker_RED
    Если чисто на css, то два спана с разными текстами, чтобы при смене класса у родительского элемента видно было один или другой.
    Или псевдоэлемент, content у которого берется из одного или другого data-атрибута.
    Ответ написан
    Комментировать
  • Как правильно задать регулярные выражения html атрибута pattern?

    Stalker_RED
    @Stalker_RED
    \d* или [0-9]*


    Но вообще, и минус и мантисса - вполне допустимы при записи числа.
    Можете так-же добавить атрибут min="0" чтобы исключить отрицательные числа.

    Еще можно проверять ввод при нажатии клавиш и при вставке, и сразу фильтровать, чтобы эти символы вообще не появлялись в поле ввода.
    Ответ написан
    Комментировать
  • Как сделать анимацию цифр из примера?

    Stalker_RED
    @Stalker_RED
    Обертка с overflow: hidden
    Внутри нее каждый символ в отдельном двухэтажном блоке.
    У каждого блока разная задержка анимации
    Ответ написан
  • Text area можно ли управлять ошибками в строках?

    Stalker_RED
    @Stalker_RED
    Это проверка правописания встроенная в браузер или ОС. Управлять из js ею не получится.
    Ответ написан
    Комментировать
  • Как создать код на javascript?

    Stalker_RED
    @Stalker_RED
    const asdContainer = document.getElementById('asd-container');
    if (asdContainer) {
      const text = asdContainer.textContent;
      console.log(text);
    }
    Ответ написан
  • Как обратиться к элементу в ячейке таблицы ( Jquery)?

    Stalker_RED
    @Stalker_RED
    table.addEventListener('click', function(evt) {
        const cell = evt.target.closest('span');
        if (cell && cell.matches('tr td span')) {
            alert(cell.textContent);
        } 
    });


    $('table').on('click', 'tr td span', function() {
      alert(this.textContent);
    });

    Писал с телефона, возможны опечатки.
    Ответ написан
  • Почему toggle меняет класс только одного элемента?

    Stalker_RED
    @Stalker_RED
    Что не так?
    let item = document.querySelector('li') // первый попавшийся li
    // ...
    item.classList.toggle('done') // именно ему вы и переключаете класс


    Вот вам для сравнения
    Ответ написан
  • Как убрать/ добавить кнопку?

    Stalker_RED
    @Stalker_RED
    let isFirstClick = true; // флаг первого клика
    
    btn1.onclick = function() { // при клике по кнопке №1
        btn3.hidden = true; // скрываем кнопку №3
    };
    
    btn2.onclick = function() { // при клике по кнопке №2
      if (isFirstClick) {
        isFirstClick = false; // убираем флаг
        btn3.hidden = false; // показываем кнопку №3
      }
    };


    Ответ написан
    Комментировать
  • Есть ли хорошие готовые preloader с печатающимся текстом?

    Stalker_RED
    @Stalker_RED
    Там кода на пять строк. Что вам нужно от "готового"?
    Ответ написан
    1 комментарий
  • Как обрезать текст в таблице?

    Stalker_RED
    @Stalker_RED
    Легко ищется по запросу css multiline ellipsis. Конкретный пример могу позже показать, с телефона неудобно.
    Ответ написан
  • Почему не работает атрибут download у ссылки с абсолютным путем?

    Stalker_RED
    @Stalker_RED
    Ссылка на тот-же домен, или на другой?
    Если другой, то не взлетит, так как
    download only works for same-origin URLs, or the blob: and data: schemes.
    Ответ написан
    Комментировать
  • Как зафиксировать этап анимации?

    Stalker_RED
    @Stalker_RED
    В принципе да, но вам придется продублировать всю логику анимации на js

    https://css-tricks.com/controlling-css-animations-...
    Ответ написан
    Комментировать
  • Как сделать вывод данных из checkbox в div?

    Stalker_RED
    @Stalker_RED

    а крестик сами добавляйте, там одна строчка всего.
    Ответ написан
    1 комментарий
  • Как объединить две формы?

    Stalker_RED
    @Stalker_RED
    Можно конечно написать скрипт, который при отправке любой формы добавляет информацию из другой формы. Но гораздо проще подправить html.

    У полей формы можно указать атрибут form="some_form_id", тогда вы можете создать форму с имейлом, например.
    <form class="haha" id="foo1"> <!--  добавлен id формы -->
      <input type="email" id="mail" name="user_email" />
    </form>


    И отдельно разместить поле с именем вот так
    <input type="text" id="name" name="user_name" form="foo1" /> <!--  внимание на атрибут form -->


    При этом оно может быть в любом месте вашей верстки, но обрабатываться будет в составе формы foo1, без скриптов, средствами самого браузера.
    Ответ написан
    3 комментария