From 9ac2502bc7c985f5f716fedd7aa649919c09ed68 Mon Sep 17 00:00:00 2001 From: YOSEFTT Date: Tue, 11 Aug 2026 18:10:03 +0300 Subject: [PATCH] Fix inline vertical-align top and bottom alignment --- .../src/internal/ops/style_vertical_align.dart | 4 ++-- .../core/test/style_vertical_align_test.dart | 17 ++++++++++------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/packages/core/lib/src/internal/ops/style_vertical_align.dart b/packages/core/lib/src/internal/ops/style_vertical_align.dart index 230da3d9c..5385c3458 100644 --- a/packages/core/lib/src/internal/ops/style_vertical_align.dart +++ b/packages/core/lib/src/internal/ops/style_vertical_align.dart @@ -133,11 +133,11 @@ AlignmentGeometry? _tryParseAlignmentGeometry(TextDirection dir, String value) { PlaceholderAlignment? _tryParsePlaceholderAlignment(String value) { switch (value) { - case kCssVerticalAlignTop: + case kCssVerticalAlignBottom: case kCssVerticalAlignSub: return PlaceholderAlignment.top; case kCssVerticalAlignSuper: - case kCssVerticalAlignBottom: + case kCssVerticalAlignTop: return PlaceholderAlignment.bottom; case kCssVerticalAlignMiddle: return PlaceholderAlignment.middle; diff --git a/packages/core/test/style_vertical_align_test.dart b/packages/core/test/style_vertical_align_test.dart index 8f5c1f7a9..2fdbed5f0 100644 --- a/packages/core/test/style_vertical_align_test.dart +++ b/packages/core/test/style_vertical_align_test.dart @@ -41,13 +41,13 @@ void main() { testWidgets('renders top text', (WidgetTester tester) async { const html = 'Foo bar'; final explained = await explain(tester, html); - expect(explained, equals('[RichText:(:[RichText:(:Foo)]@top(: bar))]')); + expect(explained, equals('[RichText:(:[RichText:(:Foo)]@bottom(: bar))]')); }); testWidgets('renders bottom text', (WidgetTester tester) async { const html = 'Foo bar'; final explained = await explain(tester, html); - expect(explained, equals('[RichText:(:[RichText:(:Foo)]@bottom(: bar))]')); + expect(explained, equals('[RichText:(:[RichText:(:Foo)]@top(: bar))]')); }); testWidgets('renders middle text', (WidgetTester tester) async { @@ -91,13 +91,16 @@ void main() { testWidgets('renders styling', (WidgetTester tester) async { const html = 'Foo bar'; final e = await explain(tester, html); - expect(e, equals('[RichText:(:[RichText:(:F(+i:o)(:o))]@top(: bar))]')); + expect(e, equals('[RichText:(:[RichText:(:F(+i:o)(:o))]@bottom(: bar))]')); }); testWidgets('renders styling from outside', (WidgetTester tester) async { const html = 'Foo bar'; final explained = await explain(tester, html); - expect(explained, equals('[RichText:(:[RichText:(+i:Foo)]@top(: bar))]')); + expect( + explained, + equals('[RichText:(:[RichText:(+i:Foo)]@bottom(: bar))]'), + ); }); group('isBlockElement', () { @@ -191,14 +194,14 @@ void main() { const html = 'Foo bar'; final explained = await explain(tester, html); - expect(explained, equals('[RichText:(:Foo [RichText:(:bar)]@top)]')); + expect(explained, equals('[RichText:(:Foo [RichText:(:bar)]@bottom)]')); }); testWidgets('display: inline-block', (WidgetTester tester) async { const html = 'Foo bar'; final explained = await explain(tester, html); - expect(explained, equals('[RichText:(:Foo [RichText:(:bar)]@top)]')); + expect(explained, equals('[RichText:(:Foo [RichText:(:bar)]@bottom)]')); }); testWidgets('display: block', (WidgetTester tester) async { @@ -242,7 +245,7 @@ void main() { testWidgets('renders top image', (WidgetTester tester) async { const html = ' foo'; final explained = await imgExplain(tester, html); - expect(explained, equals('[RichText:(:$imgRendered@top(: foo))]')); + expect(explained, equals('[RichText:(:$imgRendered@bottom(: foo))]')); }); testWidgets('renders after image', (WidgetTester tester) async {