diff --git a/example/lib/main.dart b/example/lib/main.dart index 8e42de54aa..61a84b3ec7 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -41,6 +41,13 @@ const htmlData = """ dog.
The quick brown fox jumped over the lazy dog.

+

+ + 漢かん + 字 + +  is Japanese Kanji +

diff --git a/lib/html_parser.dart b/lib/html_parser.dart index 4386f0f2d7..bc9889e4db 100644 --- a/lib/html_parser.dart +++ b/lib/html_parser.dart @@ -246,7 +246,7 @@ class HtmlParser extends StatelessWidget { return TextSpan(text: tree.text); } else { return WidgetSpan( - alignment: PlaceholderAlignment.aboveBaseline, + alignment: tree.alignment, baseline: TextBaseline.alphabetic, child: tree.toWidget(context), ); diff --git a/lib/src/html_elements.dart b/lib/src/html_elements.dart index faffc45af2..ab97dc4bce 100644 --- a/lib/src/html_elements.dart +++ b/lib/src/html_elements.dart @@ -22,9 +22,6 @@ const STYLED_ELEMENTS = [ "kbd", "mark", "q", - "rp", - "rt", - "ruby", "s", "samp", "small", @@ -87,6 +84,9 @@ const REPLACED_ELEMENTS = [ "svg", "template", "video", + "rp", + "rt", + "ruby", ]; const LAYOUT_ELEMENTS = [ diff --git a/lib/src/replaced_element.dart b/lib/src/replaced_element.dart index 3e6ba39d87..e819a5b291 100644 --- a/lib/src/replaced_element.dart +++ b/lib/src/replaced_element.dart @@ -1,4 +1,5 @@ import 'dart:convert'; +import 'dart:math'; import 'package:chewie/chewie.dart'; import 'package:chewie_audio/chewie_audio.dart'; @@ -19,14 +20,19 @@ import 'package:html/dom.dart' as dom; /// A [ReplacedElement] may use its children nodes to determine relevant information /// (e.g.