我有HTML:
<div>
<span class="label"><a href="/index/1">Bookmix Offline</a></span>
<span class="button"><a href="/settings/">Settings</a></span>
<span class="button"><a href="/export_all/">Export</a></span>
<span class="button"><a href="/import/">Import</a></span>
</div>
Run Code Online (Sandbox Code Playgroud)
和CSS:
span.button {
float:right;
}
span.label {
margin-left: 30px;
}
Run Code Online (Sandbox Code Playgroud)
在浏览器中,跨度以相反的顺序显示:导入导出设置.我可以通过仅更改CSS文件并保持HTML原样来更改顺序吗?
Mar*_*row 75
这个问题的一般解决方案是要么颠倒HTML中右浮动元素的顺序,要么将它们包装在一个包含元素中,然后将其浮动到右边.
小智 31
如果您想使列表项正确对齐而不撤消订单,请不要浮动列表项.让它们内联而不是.text-align:对你的跨度
div {
text-align:right;
}
span {
display:inline;
}
Run Code Online (Sandbox Code Playgroud)
是的,这可以通过您的确切标记来完成.
诀窍是使用 direction: rtl;
<div>
<span class="label"><a href="/index/1">Bookmix Offline</a></span>
<span class="button"><a href="/settings/">Settings</a></span>
<span class="button"><a href="/export_all/">Export</a></span>
<span class="button"><a href="/import/">Import</a></span>
</div>
Run Code Online (Sandbox Code Playgroud)
div
{
direction: rtl;
}
span.label {
float: left;
margin-left: 30px;
}
Run Code Online (Sandbox Code Playgroud)
div.outerclass {
text-align: right;
}
div.outerclass .label {
float: left;
text-align: left;
}
Run Code Online (Sandbox Code Playgroud)
好简单!
div.outerclass {
float: right;
}
div.innerclass {
float: left;
}
Run Code Online (Sandbox Code Playgroud)
div{
display:flex;
flex-flow: column;
}
span:nth-child(1){
order:4;
}
span:nth-child(2){
order:3;
}
span:nth-child(3){
order:2;
}
span:nth-child(4){
order:1;
}
Run Code Online (Sandbox Code Playgroud)
或者,反转 Y 比例:
div {
-webkit-transform: scaleY(-1);
transform: scaleY(-1);
}
span {
-webkit-transform: scaleY(-1);
transform: scaleY(-1);
display:inline-block;
width:100%;
}
Run Code Online (Sandbox Code Playgroud)