从右到左语言的div流



在HTML中,是否可以标记一组div,使它们在从左到右的语言中从左向右流动,而在从右到左的语言中则从右到右流动?也就是说,流将取决于html lang属性的设置。例如,如果您有以下

<html lang="en">

标记的div的流将是从左到右的,而如果语言是希伯来语(一种从右到左的语言)

<html lang="he">

标记的div的流将是从右到左的。

也可以使用dir属性。它可以在任何div上运行,因此您可以随时更改它。

<html lang="he" dir="rtl">

别忘了:你可能有一些CSS需要担心。我使用了一个名为R2的项目来帮助实现这一点。

我会使用CSS和jQuery。JSFiddle:http://jsfiddle.net/pxztk9ne/

默认方向为leftToRight,如果指定的语言在rightToLeftLangs数组中,则具有此类的每个块都将向右浮动。此外,目前您必须在.html元素中使用语言,而不是在html元素中(jQuery第3行)

$(document).ready(function() {
    var rightToLeftLangs = ['he'];
    if($.inArray($('.html').attr('lang'), rightToLeftLangs) > -1) {
        $('.leftToRight').removeClass('leftToRight').addClass('rightToLeft');
    }
});
.floating {
    position:relative;
    width:100px;
    height:100px;
    background:#eee;
}
.leftToRight {
    float:left;
}
.rightToLeft {
    float:right;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="html" lang="en"></div>
<div class="floating leftToRight">
    Some text
</div>

最新更新