为基础中的所有按钮设置 .button class
Set .button class for all buttons in foundation
是否可以为所有 html 按钮设置默认 .button
class?
Foundation 只有 class .button
按钮的样式,但在我的应用程序中有很多按钮,所以也许我可以为所有按钮设置样式而不添加 .button
class。
a) 您可以编辑 css/sass 文件并将样式直接应用于 button
而不是 .button
,尽管这可能会导致特异性问题。
b) 如果您使用的是 scss/sass 版本的框架,您可以使用 extends
属性。这将意味着所有 button
元素继承 .button
class
的样式
button {
@extend .button;
}
您可以在此处获取 sass 版本:http://foundation.zurb.com/sites/docs/sass.html
`@extend 属性 的详细信息可以在这里找到:http://sass-lang.com/guide
c) 或者,您可以 运行 一些 javascript 将 class 添加到所有按钮。
事实是,我认为实际添加 classes 会更不理想,但我认为这不是一个选项是有充分理由的。
这是一个 jquery 将 classes 添加到按钮的示例
$(document).ready(function() {
$('button').addClass("button");
});
.button {
background: steelblue;
color: #fff;
/* foundation button styles */
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<button>Im a button</button>
您有 2 个选择:
1) Sass 语义化。 @Brad 指着它。
使用 sass 为您的按钮制作语义标记,如下例所示:
http://www.sassmeister.com/gist/b038198f6e0049b8bc3bb1c19231aed0
2) 复制计算样式:
像这样:
.custom-button-class {
border-style: solid;
border-width: 0px;
cursor: pointer;
font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
font-weight: normal;
line-height: normal;
margin: 0 0 1.25rem;
position: relative;
text-decoration: none;
text-align: center;
-webkit-appearance: none;
-webkit-border-radius: 0;
display: inline-block;
padding-top: 1rem;
padding-right: 2rem;
padding-bottom: 1.0625rem;
padding-left: 2rem;
font-size: 1rem;
background-color: #008CBA;
border-color: #007095;
color: #FFFFFF;
-webkit-transition: background-color 300ms ease-out;
transition: background-color 300ms ease-out;
}
.custom-button-class:hover, .custom-button-class:focus {
background-color: #007095;
}
.custom-button-class:hover, .custom-button-class:focus {
color: #FFFFFF;
}
input[type="button"] {
border-style: solid;
border-width: 0px;
cursor: pointer;
font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
font-weight: normal;
line-height: normal;
margin: 0 0 1.25rem;
position: relative;
text-decoration: none;
text-align: center;
-webkit-appearance: none;
-webkit-border-radius: 0;
display: inline-block;
padding-top: 1rem;
padding-right: 2rem;
padding-bottom: 1.0625rem;
padding-left: 2rem;
font-size: 1rem;
background-color: #008CBA;
border-color: #007095;
color: #FFFFFF;
-webkit-transition: background-color 300ms ease-out;
transition: background-color 300ms ease-out;
}
input[type="button"]:hover, input[type="button"]:focus {
background-color: #007095;
}
input[type="button"]:hover, input[type="button"]:focus {
color: #FFFFFF;
}
<a class="custom-button-class" href="">hola</a>
<button>hello</button>
<input type="button" value="foundation class button">
是否可以为所有 html 按钮设置默认 .button
class?
Foundation 只有 class .button
按钮的样式,但在我的应用程序中有很多按钮,所以也许我可以为所有按钮设置样式而不添加 .button
class。
a) 您可以编辑 css/sass 文件并将样式直接应用于 button
而不是 .button
,尽管这可能会导致特异性问题。
b) 如果您使用的是 scss/sass 版本的框架,您可以使用 extends
属性。这将意味着所有 button
元素继承 .button
class
button {
@extend .button;
}
您可以在此处获取 sass 版本:http://foundation.zurb.com/sites/docs/sass.html
`@extend 属性 的详细信息可以在这里找到:http://sass-lang.com/guide
c) 或者,您可以 运行 一些 javascript 将 class 添加到所有按钮。
事实是,我认为实际添加 classes 会更不理想,但我认为这不是一个选项是有充分理由的。
这是一个 jquery 将 classes 添加到按钮的示例
$(document).ready(function() {
$('button').addClass("button");
});
.button {
background: steelblue;
color: #fff;
/* foundation button styles */
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<button>Im a button</button>
您有 2 个选择:
1) Sass 语义化。 @Brad 指着它。
使用 sass 为您的按钮制作语义标记,如下例所示:
http://www.sassmeister.com/gist/b038198f6e0049b8bc3bb1c19231aed0
2) 复制计算样式:
像这样:
.custom-button-class {
border-style: solid;
border-width: 0px;
cursor: pointer;
font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
font-weight: normal;
line-height: normal;
margin: 0 0 1.25rem;
position: relative;
text-decoration: none;
text-align: center;
-webkit-appearance: none;
-webkit-border-radius: 0;
display: inline-block;
padding-top: 1rem;
padding-right: 2rem;
padding-bottom: 1.0625rem;
padding-left: 2rem;
font-size: 1rem;
background-color: #008CBA;
border-color: #007095;
color: #FFFFFF;
-webkit-transition: background-color 300ms ease-out;
transition: background-color 300ms ease-out;
}
.custom-button-class:hover, .custom-button-class:focus {
background-color: #007095;
}
.custom-button-class:hover, .custom-button-class:focus {
color: #FFFFFF;
}
input[type="button"] {
border-style: solid;
border-width: 0px;
cursor: pointer;
font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
font-weight: normal;
line-height: normal;
margin: 0 0 1.25rem;
position: relative;
text-decoration: none;
text-align: center;
-webkit-appearance: none;
-webkit-border-radius: 0;
display: inline-block;
padding-top: 1rem;
padding-right: 2rem;
padding-bottom: 1.0625rem;
padding-left: 2rem;
font-size: 1rem;
background-color: #008CBA;
border-color: #007095;
color: #FFFFFF;
-webkit-transition: background-color 300ms ease-out;
transition: background-color 300ms ease-out;
}
input[type="button"]:hover, input[type="button"]:focus {
background-color: #007095;
}
input[type="button"]:hover, input[type="button"]:focus {
color: #FFFFFF;
}
<a class="custom-button-class" href="">hola</a>
<button>hello</button>
<input type="button" value="foundation class button">