Изменение курсора для проекта

Я хотел бы узнать, как создать простой файл HTML, в котором мой курсор заменяется на пользовательское изображение, а также отслеживается без задержки на странице (та же функция, что и в моей ОС Mac, но я хочу использовать новый курсор для проекта с графическим интерфейсом).

Я прочитал все правила свойств CSS¹. Проблема в том, что они работают только при наведении курсора на атрибут div или кнопку, когда я хочу, чтобы он работал постоянно.


person aitía    schedule 25.04.2021    source источник
comment
Не могли бы вы быть более конкретным, я не понимаю, что вы имеете в виду в этом утверждении.   -  person aitía    schedule 26.04.2021
comment
Ответ ниже объясняет это лучше.   -  person Wais Kamal    schedule 26.04.2021
comment
В большинстве ответов здесь используется body, хотя это вступает в силу только тогда, когда в теле есть элементы, на которых должен быть активен курсор - он не покрывает всю страницу полностью, тогда как если вы примените правило к самому элементу html, вы можете применить курсор ко всей всей странице независимо от того, где находится курсор на странице, см. мой ответ для получения дополнительной информации.   -  person Skully    schedule 26.04.2021
comment
@Skully Да, меня немного смущают эти ответы, поскольку HTML-тег ‹body›‹/body›, а не body {}. Не могли бы вы объяснить, какой метод будет предпочтительным для реализации этого?   -  person aitía    schedule 26.04.2021
comment
Приведенные ответы написаны на языке CSS, а не HTML. Чтобы написать в CSS, вы можете создать файл .css для записи всех ваших свойств и импортируйте это в свой HTML-файл, или вы можете добавить правило непосредственно вверху страницы в своем заголовке, используя код <style>, я обновил свой ответ примером этого.   -  person Skully    schedule 26.04.2021


Ответы (3)


Чтобы использовать пользовательское изображение, вы можете использовать свойство cursor: url внутри класса и указать путь к вашему изображению, которым вы хотите заменить курсор.

.cursor {
    cursor: url("image-path.png");
}

Если вы хотите применить курсор ко всей странице, вы можете добавить правило CSS к элементу html.

<html>
  <head>
  <style>
      html {
          cursor: url("https://i.imgur.com/8Jhi9oS.png"), auto;
      }
  </style>

  <body>
      This page has a custom cursor!
  </body>
</html>

person Skully    schedule 26.04.2021
comment
Спасибо, это хорошо работает для меня. Как добавить изображение, которое есть на моем компьютере; Я добавил путь /Users/user/Downloads/47a.jpg вместо вашего https::.. безрезультатно. - person aitía; 26.04.2021
comment
Путь относится к каталогу, в котором находится ваш файл HTML, поэтому вам не нужно записывать к нему полный путь, например, если у вас есть и файл HTML, и изображение в одной папке. , URL-адрес файла — это просто имя файла и расширение url("47a.jpg"). Дополнительные сведения см. в разделе Пути к файлам HTML. - person Skully; 26.04.2021
comment
Хорошо! Должны быть ограничения на использование пути, у меня он работает только с файлами .cur. - person aitía; 26.04.2021
comment
Вы уверены, что путь к файлу и расширение в вашем url() верны в соответствии с расположением вашего HTML-файла? Он должен работать независимо от того, является ли расширение файла .cur файлом или нет. - person Skully; 26.04.2021
comment
Да, и я использую macOS. - person aitía; 26.04.2021

Эй, если вы имеете в виду, что хотите, чтобы курсор был пользовательским везде на этой странице, вы можете использовать это:

body {
  cursor: url('path-to-image.png'), auto;   
}

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

Оформить заказ https://css-tricks.com/using-css-cursors/ для получения дополнительной информации

person Irfan Bilir    schedule 26.04.2021
comment
Что делает часть , auto? - person connexo; 26.04.2021
comment
Если высота: авто; элемент автоматически отрегулирует свою высоту, чтобы его содержимое отображалось правильно. W3Schools - person Irfan Bilir; 26.04.2021
comment
Конечно, если он назначен height, но что он делает в cursor ? - person connexo; 26.04.2021
comment
Извините, я имел в виду другой разговор. Авто часть является запасным вариантом, если часть URL не работает. Подробнее - person Irfan Bilir; 26.04.2021

У вас не может быть эффекта курсора на весь экран, но вы можете иметь его в body:

body {
  cursor: url('mycustomcursor.cur');
}

Если у вас есть изображение, которое вы хотите использовать, вам придется запустить его через конвертер, например Редактор курсоров и используйте файл .cur для URL.

person Rojo    schedule 26.04.2021
comment
Это неверная информация, на самом деле вы можете изменить курсор для всей страницы, применив правило непосредственно к элементу html. Смотрите мой ответ для примера этого. - person Skully; 26.04.2021
comment
@Skully Информация верна. Вы не можете повлиять на курсор вне области просмотра с помощью CSS. - person connexo; 26.04.2021
comment
OP специально запрашивает пользовательский курсор на странице, а не все окно, если это то, о чем говорит ваш ответ, возможно, измените свою ссылку с «весь экран» на «окно», чтобы избежать путаницы? - person Skully; 26.04.2021
comment
@Skully Я имел в виду весь экран, включая рабочий стол, панель инструментов и части окна веб-страницы, к которым веб-страница не может получить доступ, например панель поиска. Тот факт, что я сказал в теле, должен был прояснить это. - person Rojo; 26.04.2021