При создании <кнопка> это - ссылка в HTML

В основном мне нравится путь который <input type="submit"> разрабатывается, с активируемой по щелчку кнопкой, когда Вы добавляете немного CSS. Однако обычные кнопки не разрабатываются как таковые, у них нет такого clickability без некоторого главного CSS или JS, и необходимо использовать изображения.

Я превратил кнопки отправки в ссылки, при помощи действия формы, но это требует, чтобы я сделал новую форму для каждой кнопки. Как я могу найти золотую середину? Используя несколько форм вызывает проблемы в моем моделировании, которое я, может казаться, не фиксирую, если я не нахожу другой способ сделать кнопки, которые являются ссылками в HTML, которые имеют стиль по умолчанию, который заставляет их иметь нажатое состояние (и я не имею в виду настройки по умолчанию браузера).

Какие-либо идеи?

20
задан Alohci 27 July 2010 в 07:59
поделиться

3 ответа

<a href="#"><button>Link Text</button></a>

Вы запросили ссылку, которая выглядит как кнопка, поэтому используйте ссылку и кнопку :-) Это сохранит стиль кнопок браузера по умолчанию. Сама по себе кнопка ничего не делает, но нажатие на нее активирует родительскую ссылку.

Демо:

35
ответ дан 29 November 2019 в 23:57
поделиться

ИМХО 3 самых простых способа:

1: вы создаете изображение кнопки и помещаете вокруг него href. (Не лучший способ, вы потеряете гибкость и создадите множество трудностей и проблем.)

2 (Самый простой) -> JQuery

<input type="submit" someattribute="http://yoururl/index.php">

  $('button[type=submit] .default').click(function(){
     window.location = $(this).attr("someattribute");
     return false; //otherwise it will send a button submit to the server

   });  

3 (тоже простой, но я предпочитаю предыдущий):

<INPUT TYPE=BUTTON OnClick="somefunction("http://yoururl");return false" VALUE="somevalue">

$fn.somefunction= function(url) {
    window.location = url;
};
-2
ответ дан 29 November 2019 в 23:57
поделиться

У вас есть три варианта:

  • Стиль ссылок, чтобы они выглядели как кнопки с помощью CSS.

    Просто посмотрите на голубые «теги» под своим вопросом.

    Можно даже придать им угнетенный вид при нажатии (используя псевдоклассы, такие как: active), без каких-либо сценариев. Многие крупные сайты, такие как Google, в наши дни все равно начинают создавать кнопки из стилей CSS, независимо от того, написаны они или нет.

  • Поместите отдельный элемент

    вокруг каждого из них.

    Как вы упомянули в вопросе. Легко и определенно будет работать без Javascript (или даже CSS). Но он добавляет немного лишнего кода, который может выглядеть неаккуратно.

  • Положитесь на Javascript.

    Вы сказали, что не хотите этого делать.

3
ответ дан 29 November 2019 в 23:57
поделиться