首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML / CSS:如何为Div设置样式,使其与引导按钮的样式/行为相匹配

HTML / CSS:如何为Div设置样式,使其与引导按钮的样式/行为相匹配
EN

Stack Overflow用户
提问于 2021-07-16 14:00:28
回答 4查看 55关注 0票数 0

我有一个网页,使用Bootstrap的按钮class="btn btn-sm btn-outline-primary"

在同一页上,我使用可点击的Div呈现JavaScript。我给它分配了一个orders-data类:

..。

代码语言:javascript
复制
element.classList.add('orders-data');

我想让Div匹配样式的按钮使用一些CSS。到目前为止,这就是我所拥有的:

CSS

代码语言:javascript
复制
.orders-data {
    border: 1px solid #007bff;
    border-radius: 5px;
    margin-top: 5px;
    padding-left: 10px;
}

.orders-data:hover {
    background-color: #007bff;
    border: 1px solid #007bff;
    color: white;
    border-radius: 5px;
    margin-top: 5px;
    padding-left: 20px;

这似乎很管用。但是,有没有更优雅的方法来做到这一点呢?

谢谢!

EN

回答 4

Stack Overflow用户

发布于 2021-07-16 14:13:13

您可以使用此样式使Div元素类似于Bootstrap Button。

代码语言:javascript
复制
.orders-data {
  cursor:pointer;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
  border: 1px solid transparent;
  padding: .375rem .75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: .25rem;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
  user-select: none;
  display: inline-block;
  font-weight: 400;
}

.orders-data:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;}
票数 0
EN

Stack Overflow用户

发布于 2021-07-16 14:16:35

您可以将此样式添加到div中:

代码语言:javascript
复制
.orders-data {
    display: block;
    width: 115px;
    height: 25px;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    color: white;
    font-weight: bold;
    line-height: 25px;
    background-color: #0d6efd;
    border-color: #0d6efd;
    
}

.orders-data:hover {
    background-color: #007bff;
    border: 1px solid #007bff;
    color: white;
    border-radius: 5px;
    margin-top: 5px;
    padding-left: 20px;
    }
代码语言:javascript
复制
<div class="orders-data"></div>

票数 0
EN

Stack Overflow用户

发布于 2021-07-16 14:16:48

因为:您使用的是:element.classList.add('orders-data');,所以可以将引导类添加到经过循环的元素中,因此需要再次编写它们。

举个例子来说明这个想法:

代码语言:javascript
复制
let el = document.querySelector('a');
const classS = ['btn', 'btn-sm', 'btn-outline-primary'];
for (i = 0; i < classS.length; i++) {
  el.classList.add(classS[i])
}
代码语言:javascript
复制
.shadow {
  box-shadow: 2px 2px 2px black
}
代码语言:javascript
复制
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.0.2/css/bootstrap.min.css" rel="stylesheet" />
<button class="btn btn-sm btn-outline-primary">hello</button>
<a class="shadow" href="#">the world</a>

(如果您的元素没有其他类,那么setAttribute马上就可以了):

代码语言:javascript
复制
let el = document.querySelector('a');
el.setAttribute('class','btn btn-sm btn-outline-primary' ) ; 
代码语言:javascript
复制
.shadow {
  box-shadow: 2px 2px 2px black
}
代码语言:javascript
复制
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.0.2/css/bootstrap.min.css" rel="stylesheet" />
<button class="btn btn-sm btn-outline-primary">hello</button>
<a class="shadow" href="#">the world</a>
<p><code>setAttribute()</code> removes any value already there , shadow class is not there anymore!</p>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68410349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档