假设我有两个HTML格式的按钮-
<button class="save">Save</button>
<button class="cancel">Cancel</button>
当cancel
按钮为LTR时,我想给它从左侧起10 px的边距,当它为RTL时,我想给它从右侧起10 px的边距。
使用Javascript,我可以做得很好,就像这样-
let cancel = document.querySelector('.cancel');
// Suppose, the "direction" is an input variable.
cancel.style[direction == 'ltr' ? 'margin-left' : 'margin-right'] = '10px';
如果我给予一个例子,在下面的CSS属性中,我们只使用start
和end
值,它们会根据页面方向自动调整元素的左右方向。
text-align: end;
text-align: start;
justify-content: start;
align-items: end;
类似上面的东西,我想知道是否有任何方法来设置空间(无论是边距或填充)从相反/相同的方向,而不提到右和左在CSS中。
许多现代的框架如Vuetify从它们内置的helper类处理这类情况(根据LTR和RTL设置空间)(尽管JS或任何CSS属性必须在这些概念后面运行),但问题是,这只可能使用CSS吗?
2条答案
按热度按时间7lrncoxx1#
尝试
margin-inline-start: (some value);
,当您切换到RTL时,此选项会自动更改6kkfgxo02#
备选案文1:内嵌边距
备选案文2:伪类之前