Skip to content

Commit f74c2a5

Browse files
committed
fix: Fix many intrinsic issues and add better support for vertical-align throughout
1 parent f229cae commit f74c2a5

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

lib/src/builtins/image_builtin.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ class ImageBuiltIn extends HtmlExtension {
9393
}
9494

9595
return WidgetSpan(
96+
alignment: context.style!.verticalAlign.toPlaceholderAlignment(context.style!.display),
97+
baseline: TextBaseline.alphabetic,
9698
child: CssBoxWidget(
9799
style: imageStyle,
98100
childIsReplaced: true,

lib/src/builtins/interactive_element_builtin.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ class InteractiveElementBuiltIn extends HtmlExtension {
6767
);
6868
} else {
6969
return WidgetSpan(
70+
alignment: context.style!.verticalAlign.toPlaceholderAlignment(context.style!.display),
71+
baseline: TextBaseline.alphabetic,
7072
child: MultipleTapGestureDetector(
7173
onTap: onTap,
7274
child: GestureDetector(

lib/src/builtins/styled_element_builtin.dart

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -427,13 +427,14 @@ class StyledElementBuiltIn extends HtmlExtension {
427427

428428
@override
429429
InlineSpan build(ExtensionContext context) {
430-
if (context.styledElement!.style.display == Display.listItem ||
431-
((context.styledElement!.style.display == Display.block ||
432-
context.styledElement!.style.display == Display.inlineBlock) &&
430+
final style = context.styledElement!.style;
431+
final display = style.display;
432+
if (display == Display.listItem ||
433+
((display == Display.block || display == Display.inlineBlock) &&
433434
(context.styledElement!.children.isNotEmpty ||
434435
context.elementName == "hr"))) {
435436
return WidgetSpan(
436-
alignment: PlaceholderAlignment.baseline,
437+
alignment: style.verticalAlign.toPlaceholderAlignment(display),
437438
baseline: TextBaseline.alphabetic,
438439
child: CssBoxWidget.withInlineSpanChildren(
439440
key: AnchorKey.of(context.parser.key, context.styledElement),

0 commit comments

Comments
 (0)