¿Por qué el comando “Buscar” en los sitios web suele ser un botón y no un enlace?

Un botón se usa normalmente porque está enviando un formulario … el cuadro de entrada de búsqueda es parte del formulario, al igual que el botón.

Otra respuesta menciona que los enlaces no están destinados a tomar medidas. Lo que técnicamente significa es que, por defecto, un enlace realizará una solicitud HTTP GET. Una solicitud GET como se define no debe alterar los datos en el servidor. Por otro lado, POST es una solicitud HTTP que puede cambiar datos en el servidor.

Su formulario de búsqueda podría usar un método GET o POST, dependiendo del diseño del software. Por lo general, es probable que desee usar un GET porque generalmente implica que los datos no están cambiando, permite que su solicitud se almacene en caché y hace que sus resultados de búsqueda sean “marcables” hasta cierto punto. Usar un POST no hace que esas cosas sean imposibles, pero lo hace más difícil. Además, hay veces que preferiría enviar cosas sin que se muestren en la URL, y luego querría PUBLICAR.

Entonces, usando un formulario tipo GET, podría estar bien usar un enlace para enviar. Técnicamente, también puede usar un enlace para enviar un formulario de tipo POST, pero debe preocuparse por las cosas mencionadas anteriormente.

Todo es diseño, y ciertamente no hay una respuesta en blanco o negro, pero hay razones por las que usar un botón es más fácil o preferible que usar un enlace.

Los enlaces no deben realizar ninguna acción, por lo que cualquier cosa que pueda realizar una acción, como enviar un formulario, etc., debería ser un botón.

Algunos navegadores pre-cachearán los enlaces siguiéndolos, o al menos almacenando en caché el DNS, si realiza algún enlace de botones de envío, algunas herramientas automáticamente “harán clic” en ellos, lo que provocará problemas. Las arañas también rastrearán enlaces, y no querrás que envíen búsquedas vacías todo el tiempo.

En pocas palabras, los enlaces son para navegar entre las páginas, mientras que los botones son para enviar alguna información. Para la búsqueda, envía una consulta para buscar, por lo que debe ser un botón.

También se pueden hacer botones para abrir una nueva ventana, ¡no es gran cosa!