Button Outline
BotonesCore (sin librería)v1.0.0buttonoutlinenavigatelinkcore
Botón outline IA-First: navegación secundaria (saber más, ver detalles) con menor peso visual; herramienta learnMore con intención navigate.
npx webmcpcss components import core-button-outline/* Componente: Button Outline */
/* Categoría: buttons · Librería: core · Versión: 1.0.0 */
/* Botón outline IA-First: navegación secundaria (saber más, ver detalles) con menor peso visual; herramienta learnMore con intención navigate. */
/* Importar: npx webmcpcss components import core-button-outline */
/* Estilos base (variables --wm-* = API de personalización) */
.wm-btn {
display: inline-flex; align-items: center; justify-content: center; gap: 8px;
min-height: 44px; padding: 10px 22px; border: 1.5px solid transparent;
border-radius: var(--wm-radius, 10px); font: 600 var(--wm-btn-size, 15px)/1 system-ui, sans-serif;
cursor: pointer; transition: filter .15s, transform .15s, background .15s, box-shadow .15s;
}
.wm-btn:hover { transform: translateY(-1px); }
.wm-btn:focus-visible { outline: 3px solid color-mix(in srgb, var(--wm-primary, #2563eb) 40%, white); outline-offset: 2px; }
.wm-btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.wm-btn--outline { background: transparent; color: var(--wm-primary, #2563eb); border-color: var(--wm-primary, #2563eb); }
.wm-btn--outline:hover { background: color-mix(in srgb, var(--wm-primary, #2563eb) 10%, transparent); }
/* Contrato WebMCP */
.wm-btn--outline {
webmcp-tool: "learnMore";
webmcp-description: "Abre más información o los detalles del elemento (navegación secundaria)";
webmcp-intent: "navigate";
webmcp-confirmation: "none";
webmcp-permissions: "read-only";
webmcp-accessibility: "focus-visible: ring; min-target: 44px";
}
<button class="wm-btn wm-btn--outline" data-tool="learnMore" type="button">Saber más</button>
{
"id": "core-button-outline",
"name": "Button Outline",
"category": "buttons",
"library": "core",
"version": "1.0.0",
"description": "Botón outline IA-First: navegación secundaria (saber más, ver detalles) con menor peso visual; herramienta learnMore con intención navigate.",
"author": "WebMCPcss Team",
"tags": [
"button",
"outline",
"navigate",
"link",
"core"
],
"controls": [
{
"variable": "--wm-primary",
"label": "Color primario",
"type": "color",
"default": "#2563eb"
},
{
"variable": "--wm-on-primary",
"label": "Texto sobre primario",
"type": "color",
"default": "#ffffff"
},
{
"variable": "--wm-radius",
"label": "Radio",
"type": "range",
"default": "10px",
"min": 0,
"max": 24,
"step": 1,
"unit": "px"
},
{
"variable": "--wm-btn-size",
"label": "Tamaño de texto",
"type": "range",
"default": "15px",
"min": 12,
"max": 20,
"step": 1,
"unit": "px"
}
],
"promptExamples": [
"cambia el borde del botón Saber más a morado",
"convierte el botón outline en relleno"
],
"animateExamples": [
"añade un brillo al pasar el ratón por el botón outline",
"aplica fade-in al botón Saber más"
],
"related": [
"tailwind-button-outline",
"bootstrap-button-outline",
"mui-button-outline",
"shadcn-button-outline"
],
"preview": "preview.css",
"css": "button-outline.webmcp.css",
"html": "button-outline.html"
}Cómo usarlo
- Importa el componente a tu proyecto (HTML +
.webmcp.css+component.json):npx webmcpcss components import core-button-outline --output ./src/components - O añade solo el contrato a tu
webmcp.cssexistente (bloque delimitado y actualizable):npx webmcpcss components import core-button-outline --merge ./webmcp.css - Publícalo para los agentes: MCP (
webmcpcss mcp --serve --css ./webmcp.css),document.modelContext(webmcpcss standard compile ./webmcp.css --html index.html) o exporta a tu agente favorito (webmcpcss export --agent claude-code).
Herramientas para agentes
| Herramienta | Descripción | Parámetros | Intención | Confirmación | Selector |
|---|---|---|---|---|---|
learnMore | Abre más información o los detalles del elemento (navegación secundaria) | — | navigate | none | .wm-btn--outline |
Ejemplos con la CLI
webmcpcss prompt — lenguaje natural sobre el componente
cambia el borde del botón Saber más a moradoconvierte el botón outline en relleno
webmcpcss animate — animaciones declarativas
añade un brillo al pasar el ratón por el botón outlineaplica fade-in al botón Saber más