【问题标题】:HTML CSS Invisible ButtonHTML CSS 不可见按钮
【发布时间】:2012-12-09 01:30:16
【问题描述】:

您好,我正在尝试制作一个不可见的按钮(仍然有效且可点击),因为我的按钮样式嵌入在背景中,我不想对它们进行切片,而是从头开始。

所以我只想制作一个按钮,将它放在按钮应该在的背景部分并使其不可见,以便可以看到和单击背景按钮图像。

有什么建议吗?非常感谢!

【问题讨论】:

  • CSS -> 背景:透明?
  • 你可以使用图像映射和 javascript 事件处理程序,但我不得不质疑为什么你不想使用更语义化的标记来做到这一点
  • 你能提供一些你试过的代码吗?
  • 您只想使用背景来设置按钮样式?真的吗?
  • 真的,不是最好的计划。

标签: html css button invisible


【解决方案1】:

您必须为 button 元素使用以下属性以使其透明。

没有文字的透明按钮

button {

    background: transparent;
    border: none !important;
    font-size:0;
}

带有可见文本的透明按钮

button {

    background: transparent;
    border: none !important;
}​

并使用绝对position 定位元素。

举例

你有一个 div 下的按钮元素。在 div 上使用 position: relative 和在按钮上使用 position: absolute 将其定位在 div 内。

这是一个有效的JSFiddle

这是一个更新的JSFiddle,它只显示按钮中的文本。

【讨论】:

  • 谢谢,有什么办法可以隐藏所有内容(虽然它是可点击的)但仍然只显示按钮文本?
  • 如果你想查看按钮文本,只需从上面的代码中删除font-size:0;。查看更新的答案。
【解决方案2】:
button {
    background:transparent;
    border:none;
    outline:none;
    display:block;
    height:200px;
    width:200px;
    cursor:pointer;
}

给出相对于背景中图像的高度和宽度。这将删除按钮的边框和颜色。您可能还需要将其定位为绝对位置,以便正确地将其放置在需要的位置。我无法进一步帮助您无需发布您的代码

要使其真正不可见,您必须设置 outline:none; 否则在某些浏览器中会出现蓝色轮廓,您必须设置 display:block 如果您需要单击它并为其设置尺寸

【讨论】:

  • 谢谢,有没有办法隐藏所有内容(当它可以点击时)但仍然只显示按钮文本?
  • 为了使按钮完全不可见,我将“光标”设置为默认值,因此即使将鼠标悬停在按钮的位置上,光标也不会变为手形。这正是我需要的方向 - 谢谢!
【解决方案3】:

HTML

<input type="button">

CSS

input[type=button]{
 background:transparent;
 border:0;
}

【讨论】:

  • 谢谢,有什么办法可以隐藏所有内容(虽然它是可点击的)但仍然只显示按钮文本?
【解决方案4】:

在您的按钮/div 中使用 CSS background:transparent;

JSFiddle

【讨论】:

    【解决方案5】:

    您可以使用 CSS 来隐藏按钮。

    button {
      visibility: hidden;
    }
    

    如果您的&lt;button&gt; 只是图像上的一个可点击区域,为什么还要将其设为按钮?您可以改用&lt;map&gt; 元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-01
      • 2011-08-10
      • 2018-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多