Ask Questions and Find Answers
Important:
Ask is now read-only. You can review any existing questions and answers, but not add anything new.
But - don't panic! While ask is no more, we've replaced it with discuss - the new Liferay Discussion Forum! Read more here here or just visit the site here:
discuss.liferay.com
RE: Problem with Right to Left styles in liferay 7.1
Hi
I am developing a theme for liferay 7.1 , my problem is that all css styles converted automatically by RTLServlet and i does not able to write any css styles under rtl class to change styles only in Right To Left languages and fix some problems ...
for example if write :
Liferay portal converted to :
Also i read this article : https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/supporting-right-to-left-languages-in-plugins but does not work in themse and only works in theme contributers ...
anyone can help me?
thank you
I am developing a theme for liferay 7.1 , my problem is that all css styles converted automatically by RTLServlet and i does not able to write any css styles under rtl class to change styles only in Right To Left languages and fix some problems ...
for example if write :
.rtl{
code, kbd, pre, samp {
text-align: left;
}
}
Liferay portal converted to :
[color=#000000][font="Courier New"][size=9pt].rtl{
code, kbd, pre, samp {
text-align: right;
}
}
[/size][/font][/color]
how to avoid this automatically coanvert by liferay?Also i read this article : https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/supporting-right-to-left-languages-in-plugins but does not work in themse and only works in theme contributers ...
anyone can help me?
thank you
Can you do?
When it goes through the conversion it will output:
.rtl{
code, kbd, pre, samp {
text-align: right;
}
}
When it goes through the conversion it will output:
.rtl{
code, kbd, pre, samp {
text-align: left;
}
}
Thank you Patrick.
i resolved this issue by adding bellow lines in gulpfile.js because in lifery theme builder exist a task named build:r2 that converted all css files to _rtl.css :
in main_rtl.scss we can overwrite any css rules this rules does not converted by r2
also we will open an issue in https://github.com/liferay/liferay-js-themes-toolkit and commit this change to improve support Right to left languages.
i resolved this issue by adding bellow lines in gulpfile.js because in lifery theme builder exist a task named build:r2 that converted all css files to _rtl.css :
* SPDX-License-Identifier: MIT
*/
'use strict';
var gulp = require('gulp');
var gulpif = require('gulp-if');
var log = require('fancy-log');
const debug = require('gulp-debug');
var gulpmatch = require('gulp-match');
var map = require('map-stream');
var liferayThemeTasks = require('liferay-theme-tasks');
const lfrThemeConfig = require('liferay-theme-tasks/lib/liferay_theme_config');
const themeUtil = require('liferay-theme-tasks/lib/util');
const path = require('path');
const _ = require('lodash');
const {createBourbonFile} = require('liferay-theme-tasks/lib/bourbon_dependencies');
liferayThemeTasks.registerTasks({
gulp,
});
liferayThemeTasks.registerTasks({
gulp: gulp,
hookFn: function(gulp,options) {
const {pathBuild} = options;
gulp.task('build:r2', function(done) {
const r2 = require('gulp-liferay-r2-css');
const plugins = require('gulp-load-plugins')();
const fs = require('fs');
return gulp
.src([pathBuild + '/css/*.css','!'+pathBuild+'/css/*_rtl.css'])
.pipe(plugins.rename({
suffix: '_rtl',
}))
.pipe(r2())
.pipe(map(function (file, cb) {
fs.stat(file.path, function(err, data) {
if (!err) {
var content = fs.readFileSync(file.path, 'utf8');
file.contents = Buffer.from(file.contents.toString('utf8').concat(content));
}
});
cb(null, file);
}))
.pipe(gulp.dest(pathBuild + '/css'));
});
}
});
we overwrite build:r2 task and now when i add main_rtl.scss in css folder this include at end of main_rtl.css .in main_rtl.scss we can overwrite any css rules this rules does not converted by r2

also we will open an issue in https://github.com/liferay/liferay-js-themes-toolkit and commit this change to improve support Right to left languages.
Copyright © 2025 Liferay, Inc
• Privacy Policy
Powered by Liferay™