From a2d347dcdc9777f6d12c53334510131a1fdf5fc5 Mon Sep 17 00:00:00 2001
From: johnnyshields <27655+johnnyshields@users.noreply.github.com>
Date: Mon, 6 Jul 2026 14:15:39 +0900
Subject: [PATCH] RTL: right-align number next to the flag/dial-code button
(pure-CSS layout)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Opinionated TableCheck RTL layout: the phone number is right-aligned so it sits
beside the country button, and the number, separate dial code and flag read as
one group hugging the flag β e.g. "51 234 5678 +966 πΈπ¦".
- No direction detection in JS, and the dial code keeps ONE position (inside the
country button, upstream default) that serves both LTR and RTL.
- Layout is pure CSS, scoped to :dir(rtl): right-align the number and move the
flag-clearance padding to the input's physical inline-end.
- Why the one JS touch: browsers resolve a tel input's own direction as LTR even
inside an RTL page, so ui.ts's flag-clearance padding-inline-start lands on the
physical LEFT β the wrong side when the button is on the right. ui.ts now also
publishes that already-measured width as the --iti-country-clearance custom
property (a measurement only); the :dir(rtl) rule neutralises the left padding
and re-applies the clearance on the right. The direction/side decision is 100%
in CSS.
Only the RTL visual snapshot changes; the other 8 are byte-identical and the LTR
path is untouched. typecheck clean, e2e 17 passed, node unit suite 508 passed.
---
packages/core/src/css/intlTelInput.css | 26 ++++++++++++++++++
packages/core/src/js/core/ui.ts | 9 ++++++
.../vanilla-rtl-dropdown-open-chromium.png | Bin 19094 -> 19293 bytes
3 files changed, 35 insertions(+)
diff --git a/packages/core/src/css/intlTelInput.css b/packages/core/src/css/intlTelInput.css
index caab58d39..5b92f4633 100644
--- a/packages/core/src/css/intlTelInput.css
+++ b/packages/core/src/css/intlTelInput.css
@@ -132,6 +132,32 @@
direction: ltr;
}
+/* Fork RTL layout: right-align the phone number so it sits next to the country button, which
+ holds the flag and the separate dial code on the inline-start (right) edge. The number and
+ dial code then read as one group hugging the flag ("51 234 5678 +966 π¦πͺ"). Pure CSS,
+ scoped to :dir(rtl); the LTR layout is unchanged and the dial code keeps its single,
+ direction-agnostic position inside the country button (see ui.ts #buildCountryContainer).
+
+ Note: placing a *separate* dial-code element to the LEFT of the right-aligned number, in a
+ full-width field, is not expressible in pure CSS β it needs the number's pixel width (a JS
+ measurement) or a field that shrinks to its content. Keeping the dial code by the flag is
+ the full-width, pure-CSS layout. The scope is keyed off the wrapper's directionality (a
+ plain
, whose :dir resolves reliably) and reaches the input via a descendant selector,
+ so it does not depend on the
's own :dir resolution. */
+.iti:dir(rtl) .iti__tel-input {
+ /* Right-align the number so it sits next to the country button. */
+ text-align: right;
+ /* The input's own direction resolves to LTR (browsers force it for tel/number-style inputs
+ even inside an RTL page), so its logical inline-start is the physical LEFT β where the
+ JS-set flag-clearance padding lands, and the WRONG side for an RTL widget whose country
+ button is on the right. Neutralise that padding and re-apply the clearance on the physical
+ RIGHT (the input's inline-end). The width comes from the --iti-country-clearance custom
+ property that ui.ts publishes (a measurement; the side is chosen here in CSS). !important
+ beats both the JS inline padding-inline-start and any consumer id-selector padding. */
+ padding-inline-start: var(--iti-spacer-horizontal) !important;
+ padding-inline-end: var(--iti-country-clearance, 0px) !important;
+}
+
.iti__arrow {
margin-inline-start: var(--iti-arrow-padding);
margin-top: -2px;
diff --git a/packages/core/src/js/core/ui.ts b/packages/core/src/js/core/ui.ts
index 3fbd32447..6fc515138 100644
--- a/packages/core/src/js/core/ui.ts
+++ b/packages/core/src/js/core/ui.ts
@@ -487,6 +487,15 @@ export default class UI {
const inputPadding =
selectedCountryWidth + LAYOUT.INPUT_PADDING_EXTRA_LEFT;
this.telInputEl.style.paddingInlineStart = `${inputPadding}px`;
+ //* Publish the clearance width as a custom property so the RTL stylesheet can place it on
+ //* the physical RIGHT. Browsers resolve a tel input's own direction as LTR even inside an
+ //* RTL page, so the line above (logical inline-start) writes to the physical LEFT, whereas
+ //* the flag/country button in an RTL widget sits on the RIGHT. This is a measurement only β
+ //* the direction/side decision lives entirely in CSS (intlTelInput.css, scoped to :dir(rtl)).
+ this.telInputEl.style.setProperty(
+ "--iti-country-clearance",
+ `${inputPadding}px`,
+ );
}
}
diff --git a/tests-e2e/visual.spec.ts-snapshots/vanilla-rtl-dropdown-open-chromium.png b/tests-e2e/visual.spec.ts-snapshots/vanilla-rtl-dropdown-open-chromium.png
index 7740ccf920940a9096da3731a9f6d6e4590f7620..c3686252c035a1c0f9012afaf64afa9249a001a7 100644
GIT binary patch
literal 19293
zcmeIaXHb;+)-Q@W;^?R-B1%vUq$Y?WL6o2fN|R|~gVG`(k_D06U;>8>O*btdpyZ5_
zGYS%$93|(RbC7V?!|Yvk&;9V;bE
_5%)9(|<#YIkq3teA^4mpyu@c>cHU
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
DCsbJM
literal 19094
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