css - 无法在 CSS 中使用::after &::before 设置按钮样式

标签 css pseudo-element

我在我的 CSS 类中使用了 ::before::after 元素在我的按钮中放置了一个底部边框,但这似乎并没有在我的案例中工作。
我将 ::before 元素标记定位为 absolute 以便边框位于按钮内部,但由于某些原因,边框一直延伸到整个页面只是按钮。

.mydiv {
  background-color: #242128;
  border-radius: 0;
  height: 1000px;
  width: 100%;
}

body {
  margin: 0px;
}

.mybtn2 {
  border: none;
  font-size: 2em;
  border-radius: 5px;
  cursor: pointer;
  color: white;
  font-family: Serif;
  margin-top: 50px;
  margin-left: 5%;
  background-color: #242128;
  padding: 5px 10px;
}

.mybtn2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-bottom: 2px solid white;
}
<body>
  <div class="mydiv">
    <button class="mybtn2">Hover Me</button>
  </div>
</body>

最佳答案

你需要 position: relative;.mybtn2 上。

关于css - 无法在 CSS 中使用::after &::before 设置按钮样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55025991/

相关文章:

css - 通过 CSS 模糊图像?

javascript - 如何从 Javascript 中的 responseText 设置 HTML 中的 img.src?

html - 字体家族在服务器上不起作用

css - 样式化 'first-line' 内部元素

javascript - JS中匹配3个元素高度的代码,这样正确吗?

javascript - 如何将 td id 值转移到另一个页面

css - &::before 伪元素未正确对齐 - CSS(3) 盒模型 - LESS

javascript - 使用 javascript(或 jQuery)选择和操作 CSS 伪元素,例如::before 和::after

css - 为什么我不能组合伪元素选择器?

html - 如何将这个跨度移动到它自己的行?