2009-08-11 80 views
7

我正在使用从右到左的布局(认为是希伯来文或阿拉伯语)。在RTL中,页面通常是水平翻转的。但是,我无法弄清楚如何改变滚动条的方向。我假设滚动条应该出现在可滚动元素的左侧,而不是右侧,就像它在LTR布局中一样。在从右到左的页面中设置滚动条的正确方向

这里是滚动条右侧仍然出现一个例子页面:

<html dir="rtl"> 
<body> 
<div style="height: 100px; overflow: auto;"> 
    <p>This is some text</p> 
    <p>This is some text</p> 
    <p>This is some text</p> 
    <p>This is some text</p> 
    <p>This is some text</p> 
</body> 
</html> 

是一个滚动条,浏览器区域设置的方位,因而不是我应该关心的,或者是有一种设置滚动条方向的方法?

(我不感兴趣,我实现自己的JavaScript滚动条;如果事实证明这仅仅是一个浏览器的限制,那么我宁愿忍受这不是增加复杂性的页面。)

+0

就像一个旁注,我是阿拉伯人,并且我知道的大部分网站都将滚动条保持在其默认位置(这是我想象的系统特有的)。 – 2009-08-11 18:21:46

+0

也许值得问你的用户他们对切换滚动条的感受如何,他们觉得它更有用吗? – Tom 2009-08-30 22:13:29

+0

当您处于RTL布局中时,您正在右侧放置一个菜单。作为它旁边的滚动条并不是一个好主意。通常,如果我们在页面上有一个表格,它将放置在左侧,最好看到旁边的滚动条。我认为把滚动条放在相反的位置更合理。 – 2015-10-05 07:20:40

回答

8

我不认为这样做是个好主意,我是阿拉伯人,我发现当滚动条在左边时,它真的很烦人。

+0

您是否知道任何可以解释RTL语言环境中的用户期望的好资源?这是一个更大的总体问题 - 首先要知道什么是需要的。 – 2009-08-13 06:12:28

+0

对不起,我不知道任何讨论这个问题的资源,谷歌也没有多少回应。但无论如何,我能说的是,'每个窗口'都是不好的。换句话说,如果用户使用镜像(我指的是他们的操作系统的设置),那么当用户已经选择他们想要的时候,您不需要做任何事情。但是如果用户没有使用镜像,这意味着他们在所有窗口右侧都有滚动条,当他们有一个左侧滚动条的窗口时,它会变得非常烦人。它应该留给操作系统设置。 – 2009-08-13 17:42:27

+0

我并不完全确定,但我认为大多数阿拉伯语使用者无论如何都不使用镜像,这是特别的。适用于Windows XP和Vista。那么,至少我认识的人中没有一个使用它。 – 2009-08-13 17:43:51

0

你可以dir属性添加到body标签,像这样:

<body dir="rtl"> 

美中不足的是,该行为在不同的浏览器不稳定。大多数较新的浏览器会按照您的预期从右向左翻转内容,但只有IE和Opera也会将滚动条移动到左侧。

+0

在Opera中,用户可以强制将滚动条向右移动:opera:config#RTL%20Flips%20UI – XP1 2011-08-12 13:31:20

1

没有标准的方法来翻转页面滚动条的边,因为它是一个UI元素,而您只能控制页面内容(HTML)。

3

只是做body标签:

<body dir="rtl"> 

,它会工作的优良只有IE浏览器。

Firefox,Safari和Chrome是另一回事,你需要一些Javascript才能使它工作。