【发布时间】:2014-09-14 08:26:53
【问题描述】:
我有一个我想要设置样式的 html 文件,它包含一对无序列表的链接(和一个跨度),我希望第二个链接有我已经实现的圆形背景,但是我需要使链接的文本跨越多行(可能每行一个单词)
标记是:
<div class="controls">
<ul class="betrow">
<li><a href="#" class="btn secondary">pop up 1</a></li>
<li><a href="#" class="btn decrease">add more</a></li>
<li><span>1</span></li>
<li><a href="#" class="btn increase">take away</a></li>
<li><a href="#" class="btn secondary">pop up 2</a></li>
</ul>
<!-- PLAY ROW -->
<ul class="playrow">
<li><a href="#" class="btn">Quick Play</a></li>
<li><a href="#" class="btn">Play 5</a></li>
<li><a href="#" class="btn primary">Play</a></li>
<li><a href="#" class="btn">Play 10</a></li>
<li><a href="#" class="btn oneline">Clear</a></li>
</ul>
</div>
我应用的样式是:
html {
font-size: 62.5%;
}
body {
font-family: 'Allan', Arial, sans-serif;
font-size: 1rem;
letter-spacing: 0.1rem;
min-width: 320px;
}
a {
text-decoration: none;
border: none;
outline: none;
}
.controls {
box-sizing: border-box;
width: 100%;
height: 100px;
position: absolute;
bottom: 0px;
left: 0px;
background-color: #FFF;
z-index: 1;
border: 10px solid #630;
}
.controls ul {
display: block;
height: 30px;
width: 70%;
list-style: none;
padding: 0;
overflow: visible;
letter-spacing: 0px;
}
.controls ul li {
float: left;
}
.controls ul.betrow {
margin: 2px auto 10px;
}
.controls ul.playrow {
margin: 0 auto 10px;
}
.controls ul.playrow li,
.controls ul.betrow li {
display: block;
width: 18.4%;
margin-right: 2%;
height: 30px;
}
.controls ul.betrow li a,
.controls ul.betrow li span{
border-radius: 15px;
}
.controls ul.playrow li a,
.controls ul.playrow li span{
border-radius: 25px;
max-width: 30px;
min-width:30px;
margin-left: auto;
margin-right: auto;
text-align:center;
word-spacing:0px;
font-size:0.8rem;
word-break:break-all;
word-wrap:break-word;
}
.controls ul.betrow li:last-child,
.controls ul.playrow li:last-child {
margin-right: 0;
}
.controls ul li a,
.controls ul li span {
display: block;
text-align: center;
line-height: 30px;
white-space: nowrap;
}
.controls ul li span {
overflow: visible;
font-size: 3rem;
color: #111;
letter-spacing: -1px;
animation: scalePulse 5s ease-in-out infinite;
text-shadow: -1px -1px 0 #FFF;
}
.controls ul li a {
text-transform: uppercase;
background-color: #1c1e00;
box-shadow: inset 0 0 5px #030;
text-shadow: 1px 1px 0px #000;
font-size: 1.4rem;
color: #FFF;
border: 4px solid #630;
}
.controls ul li a:hover,
.controls ul li a:active,
.controls ul li a:focus {
background-color: #1c0e00;
border: 5px solid #630;
transition: background-color 0.5s ease-out;
}
.controls ul li a.primary {
font-size: 1.8rem;
background-size:90%;
color: #fff;
border: none;
border-radius: 0;
margin-left: -10px;
margin-top: -8px;
padding-top:10px;
height: 40px;
box-shadow: none;
background-color: transparent;
background-position: center;
background-repeat: no-repeat;
max-width:none;
}
.controls ul li a.primary:hover,
.controls ul li a.primary:active,
.controls ul li a.primary:focus {
background-image: url('../images/game2/bg_plank.svg');
}
.controls ul li a.secondary {
background-color: #1c0e00;
box-shadow: inset 0 0 5px #00275B;
display: none;
}
.controls ul li a.secondary:hover,
.controls ul li a.secondary:active,
.controls ul li a.secondary:focus {
background-color: #1c0e00;
transition: background-color 0.5s ease-out 0s;
}
.controls ul li a.increase,
.controls ul li a.decrease {
background-color: #1c0e00;
box-shadow: inset 0 0 5px #300;
}
.controls ul li a.increase:hover,
.controls ul li a.decrease:hover,
.controls ul li a.increase:active,
.controls ul li a.decrease:active,
.controls ul li a.increase:focus,
.controls ul li a.decrease:focus {
background-color: #1C0E00;
transition: background-color 0.5s ease-out;
}
我尝试添加 word-break:break-all;和 word-wrap:break-word;但两者都没有帮助。
为了澄清,我只希望文本“快速播放”、“播放 5”、“播放 10”分成 2 行,以便它们很好地适合锚点的圆形背景。
【问题讨论】:
-
你能把它放在jsfiddle.net 中,我们可以看到问题吗?
-
你在单词之间尝试过
吗? ?如果您只想添加换行符,我认为
会完成您的工作