我有一个工作解决方案,用于包裹在bootstrap 3手风琴中的面板。
如何从“>”动画更改人字形状态到旋转90度的“^”?
.panel-heading .accordion-toggle:after {
font-family: 'Glyphicons Halflings';
content: "\e114";
float: right;
color: grey;
}
.panel-heading .accordion-toggle.collapsed:after {
content: "\e080";
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<div class="panel-group" id="accordion">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#importationCollapse">Importation</a>
</h3>
</div>
<div id="importationCollapse" class="panel-collapse collapse in">
<div class="panel-body">
<p>Content: blahblah</p>
</div>
</div>
</div>
</div>
[编辑] 我正在寻找一个平稳的旋转,我已经知道如何改变V形状态。
答案 0 :(得分:4)
你可以简单地替换
.panel-heading .accordion-toggle.collapsed:after {
content: "\e080";
}
使用以下
.panel-heading .accordion-toggle.collapsed:after {
transform: rotateX(180deg);
}
这应该是诀窍,而不是使用另一个角色。 Demo on Codepen
要为旋转设置动画,您可以添加以下内容
.panel-heading .accordion-toggle:after {
font-family: 'Glyphicons Halflings';
content: "\e114";
float: right;
color: grey;
transition: transform 0.5s;
transform-origin: 8px 7px;
}
沿Z轴旋转
.panel-heading .accordion-toggle.collapsed:after {
transform: rotateZ(180deg);
}
您可以尝试使用transform-origin来获得所需的结果。
答案 1 :(得分:1)
您可以尝试使用transition
和transform: rotate()
来完成内容,而不是更改内容。请查看下面的代码段以供参考。
.panel-heading .accordion-toggle:after {
font-family: 'Glyphicons Halflings';
content: "\e114";
float: right;
color: grey;
transition: all 0.5s ease;
}
.panel-heading .accordion-toggle.collapsed:after {
/*content: "\e080";*/
transform: rotate(180deg);
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<div class="panel-group" id="accordion">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#importationCollapse">Importation</a>
</h3>
</div>
<div id="importationCollapse" class="panel-collapse collapse in">
<div class="panel-body">
<p>Content: blahblah</p>
</div>
</div>
</div>
</div>
&#13;