зеркало из https://github.com/mozilla/gecko-dev.git
Backed out 2 changesets (bug 1064172) for Wr failures at /css/css-text/boundary-shaping/boundary-shaping-010.html
Backed out changeset 8126c43fb9e7 (bug 1064172) Backed out changeset 107a4383fa0c (bug 1064172)
This commit is contained in:
Родитель
49f58b6031
Коммит
2edc28a37f
|
@ -1828,15 +1828,6 @@ bool BuildTextRunsScanner::ContinueTextRunAcrossFrames(nsTextFrame* aFrame1,
|
||||||
}
|
}
|
||||||
|
|
||||||
ComputedStyle* sc1 = aFrame1->Style();
|
ComputedStyle* sc1 = aFrame1->Style();
|
||||||
ComputedStyle* sc2 = aFrame2->Style();
|
|
||||||
|
|
||||||
// Any difference in writing-mode/directionality inhibits shaping across
|
|
||||||
// the boundary.
|
|
||||||
WritingMode wm(sc1);
|
|
||||||
if (wm != WritingMode(sc2)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
const nsStyleText* textStyle1 = sc1->StyleText();
|
const nsStyleText* textStyle1 = sc1->StyleText();
|
||||||
// If the first frame ends in a preformatted newline, then we end the textrun
|
// If the first frame ends in a preformatted newline, then we end the textrun
|
||||||
// here. This avoids creating giant textruns for an entire plain text file.
|
// here. This avoids creating giant textruns for an entire plain text file.
|
||||||
|
@ -1844,78 +1835,8 @@ bool BuildTextRunsScanner::ContinueTextRunAcrossFrames(nsTextFrame* aFrame1,
|
||||||
// even if it has newlines in it, so typically we won't see trailing newlines
|
// even if it has newlines in it, so typically we won't see trailing newlines
|
||||||
// until after reflow has broken up the frame into one (or more) frames per
|
// until after reflow has broken up the frame into one (or more) frames per
|
||||||
// line. That's OK though.
|
// line. That's OK though.
|
||||||
if (textStyle1->NewlineIsSignificant(aFrame1) &&
|
if (textStyle1->NewlineIsSignificant(aFrame1) && HasTerminalNewline(aFrame1))
|
||||||
HasTerminalNewline(aFrame1)) {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
if (aFrame1->GetParent()->GetContent() !=
|
|
||||||
aFrame2->GetParent()->GetContent()) {
|
|
||||||
// Does aFrame, or any ancestor between it and aAncestor, have a property
|
|
||||||
// that should inhibit cross-element-boundary shaping on aSide?
|
|
||||||
auto PreventCrossBoundaryShaping = [](const nsIFrame* aFrame,
|
|
||||||
const nsIFrame* aAncestor,
|
|
||||||
Side aSide) {
|
|
||||||
while (aFrame != aAncestor) {
|
|
||||||
ComputedStyle* ctx = aFrame->Style();
|
|
||||||
// According to https://drafts.csswg.org/css-text/#boundary-shaping:
|
|
||||||
//
|
|
||||||
// Text shaping must be broken at inline box boundaries when any of the
|
|
||||||
// following are true for any box whose boundary separates the two
|
|
||||||
// typographic character units:
|
|
||||||
//
|
|
||||||
// 1. Any of margin/border/padding separating the two typographic
|
|
||||||
// character units in the inline axis is non-zero.
|
|
||||||
const nsStyleCoord& margin = ctx->StyleMargin()->mMargin.Get(aSide);
|
|
||||||
if (!margin.ConvertsToLength() || margin.ToLength() != 0) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
const nsStyleCoord& padding = ctx->StylePadding()->mPadding.Get(aSide);
|
|
||||||
if (!padding.ConvertsToLength() || padding.ToLength() != 0) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (ctx->StyleBorder()->GetComputedBorderWidth(aSide) != 0) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 2. vertical-align is not baseline.
|
|
||||||
const nsStyleCoord& coord = ctx->StyleDisplay()->mVerticalAlign;
|
|
||||||
if (coord.GetUnit() != eStyleUnit_Enumerated ||
|
|
||||||
coord.GetIntValue() != NS_STYLE_VERTICAL_ALIGN_BASELINE) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 3. The boundary is a bidi isolation boundary.
|
|
||||||
const uint8_t unicodeBidi = ctx->StyleTextReset()->mUnicodeBidi;
|
|
||||||
if (unicodeBidi == NS_STYLE_UNICODE_BIDI_ISOLATE ||
|
|
||||||
unicodeBidi == NS_STYLE_UNICODE_BIDI_ISOLATE_OVERRIDE) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
aFrame = aFrame->GetParent();
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
|
|
||||||
const nsIFrame* ancestor =
|
|
||||||
nsLayoutUtils::FindNearestCommonAncestorFrame(aFrame1, aFrame2);
|
|
||||||
MOZ_ASSERT(ancestor);
|
|
||||||
|
|
||||||
// Map inline-end and inline-start to physical sides for checking presence
|
|
||||||
// of non-zero margin/border/padding.
|
|
||||||
Side side1 = wm.PhysicalSide(eLogicalSideIEnd);
|
|
||||||
Side side2 = wm.PhysicalSide(eLogicalSideIStart);
|
|
||||||
// If the frames have an embedding level that is opposite to the writing
|
|
||||||
// mode, we need to swap which sides we're checking.
|
|
||||||
if (IS_LEVEL_RTL(aFrame1->GetEmbeddingLevel()) == wm.IsBidiLTR()) {
|
|
||||||
Swap(side1, side2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (PreventCrossBoundaryShaping(aFrame1, ancestor, side1) ||
|
|
||||||
PreventCrossBoundaryShaping(aFrame2, ancestor, side2)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (aFrame1->GetContent() == aFrame2->GetContent() &&
|
if (aFrame1->GetContent() == aFrame2->GetContent() &&
|
||||||
aFrame1->GetNextInFlow() != aFrame2) {
|
aFrame1->GetNextInFlow() != aFrame2) {
|
||||||
|
@ -1928,10 +1849,7 @@ bool BuildTextRunsScanner::ContinueTextRunAcrossFrames(nsTextFrame* aFrame1,
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sc1 == sc2) {
|
ComputedStyle* sc2 = aFrame2->Style();
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
const nsStyleText* textStyle2 = sc2->StyleText();
|
const nsStyleText* textStyle2 = sc2->StyleText();
|
||||||
if (sc1 == sc2) return true;
|
if (sc1 == sc2) return true;
|
||||||
|
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must not be broken across inline box boundaries when there is no change in formatting</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-001.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
/* initial values for these properties should not interrupt shaping */
|
|
||||||
vertical-align: initial;
|
|
||||||
padding: initial;
|
|
||||||
margin: initial;
|
|
||||||
border: initial;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when 'vertical-align' is not 'baseline'</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-002.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
vertical-align: 0; /* distinct from 'baseline', should break shaping */
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when padding is non-zero</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-003.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when margin is non-zero</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-004.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when border is non-zero</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-005.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
border-right: 10px solid transparent;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when 'vertical-align' is not 'baseline'</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-006.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
vertical-align: super;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span><span><span class=a><span><span>f</span></span></span></span></span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,27 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when padding or margin is non-zero</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-007.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
.b {
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span><span class=a><span><span class=b><span>f</span></span></span></span></span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,24 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries at a bidi isolation boundary</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-008.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
unicode-bidi: isolate; /* bidi isolation boundaries should break shaping */
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,57 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must be broken across inline box boundaries when padding or margin is non-zero</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-009.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font: 36px sans-serif;
|
|
||||||
}
|
|
||||||
div {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
padding-right: 10px;
|
|
||||||
}
|
|
||||||
.b {
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
.c {
|
|
||||||
color: red;
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
.d {
|
|
||||||
color: red;
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div dir=ltr>
|
|
||||||
السلام<span class=a>عليكم</span>
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
<span class=b>السلام</span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
السلام<span class=a>عليكم</span>
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
<span class=b>السلام</span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
السلام<span class=c>عليكم</span>
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
<span class=d>السلام</span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
السلام<span class=c>عليكم</span>
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
<span class=d>السلام</span>عليكم
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,21 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<title>Text shaping must not be broken across inline box boundaries when there is no change in formatting</title>
|
|
||||||
<link rel=match href="reference/boundary-shaping-010.ref.html">
|
|
||||||
<link rel=help href="https://drafts.csswg.org/css-text/#boundary-shaping">
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font: 36px sans-serif;
|
|
||||||
}
|
|
||||||
div {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div dir=rtl>
|
|
||||||
ال<span>سل</span>ام
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,18 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
office
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,21 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,22 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
width: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a> </span>fice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,22 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
width: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
off<span class=a> </span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,22 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
width: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
off<span class=a> </span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,22 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
vertical-align: super;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,23 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
padding-left: 10px;
|
|
||||||
margin-right: 10px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,21 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
@font-face {
|
|
||||||
font-family: test;
|
|
||||||
src: url(../resources/LinLibertine_Re-4.7.5.woff);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font: 36px test; /* use a font that includes ligatures for "fi" etc */
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
of<span class=a>f</span>ice
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,56 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font: 36px sans-serif;
|
|
||||||
}
|
|
||||||
div {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.a {
|
|
||||||
display: inline-block;
|
|
||||||
width: 10px;
|
|
||||||
}
|
|
||||||
.c1 {
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
.c {
|
|
||||||
color: red;
|
|
||||||
}
|
|
||||||
.d1 {
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
.d {
|
|
||||||
color: red;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div dir=ltr>
|
|
||||||
السلام<span class=a> </span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
السلام<span class=a> </span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
السلام<span class=a> </span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
السلام<span class=a> </span>عليكم
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
<span class=c1>السلام<span class=c>عليكم</span></span>
|
|
||||||
</div>
|
|
||||||
<div dir=ltr>
|
|
||||||
<span class=d1><span class=d>السلام</span>عليكم</span>
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
<span class=c1>السلام<span class=c>عليكم</span></span>
|
|
||||||
</div>
|
|
||||||
<div dir=rtl>
|
|
||||||
<span class=d1><span class=d>السلام</span>عليكم</span>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,18 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8>
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font: 36px sans-serif;
|
|
||||||
}
|
|
||||||
div {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div dir=rtl>
|
|
||||||
السلام
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Двоичный файл не отображается.
Загрузка…
Ссылка в новой задаче