diff --git a/Sources/TokamakStaticHTML/Resources/TokamakStyles.swift b/Sources/TokamakStaticHTML/Resources/TokamakStyles.swift index 8aedb441a..e3a51654e 100644 --- a/Sources/TokamakStaticHTML/Resources/TokamakStyles.swift +++ b/Sources/TokamakStaticHTML/Resources/TokamakStyles.swift @@ -16,15 +16,15 @@ import TokamakCore public let tokamakStyles = """ ._tokamak-stack { - display: grid; + display: flex; } ._tokamak-hstack { - grid-auto-flow: column; - column-gap: var(--tokamak-stack-gap, \(Int(defaultStackSpacing))px); + flex-direction: row; + gap: var(--tokamak-stack-gap, \(Int(defaultStackSpacing))px); } ._tokamak-vstack { - grid-auto-flow: row; - row-gap: var(--tokamak-stack-gap, \(Int(defaultStackSpacing))px); + flex-direction: column; + gap: var(--tokamak-stack-gap, \(Int(defaultStackSpacing))px); } ._tokamak-scrollview-hideindicators { scrollbar-color: transparent; diff --git a/Sources/TokamakStaticHTML/Shapes/Path.swift b/Sources/TokamakStaticHTML/Shapes/Path.swift index 1938f5d94..9f22d4a1b 100644 --- a/Sources/TokamakStaticHTML/Shapes/Path.swift +++ b/Sources/TokamakStaticHTML/Shapes/Path.swift @@ -147,10 +147,14 @@ extension Path: _HTMLPrimitive { """ width: 100%; height: 100%; + min-width: 0; + min-height: 0; """ : """ width: \(max(0, size.width)); height: \(max(0, size.height)); + min-width: 0; + min-height: 0; """ } diff --git a/Sources/TokamakStaticHTML/Views/Layout/HStack.swift b/Sources/TokamakStaticHTML/Views/Layout/HStack.swift index e44ec8b8a..30e1d4deb 100644 --- a/Sources/TokamakStaticHTML/Views/Layout/HStack.swift +++ b/Sources/TokamakStaticHTML/Views/Layout/HStack.swift @@ -18,11 +18,11 @@ extension VerticalAlignment { var cssValue: String { switch self { case .top: - return "start" + return "flex-start" case .center: return "center" case .bottom: - return "end" + return "flex-end" default: return "center" } @@ -38,7 +38,7 @@ extension HStack: _HTMLPrimitive, SpacerContainer { return AnyView(HTML("div", [ "style": """ - align-items: \(alignment.cssValue); + justify-content: \(alignment.cssValue); \(hasSpacer ? "width: 100%;" : "") \(fillCrossAxis ? "height: 100%;" : "") \(spacing != defaultStackSpacing ? "--tokamak-stack-gap: \(spacing)px;" : "") diff --git a/Sources/TokamakStaticHTML/Views/Layout/VStack.swift b/Sources/TokamakStaticHTML/Views/Layout/VStack.swift index 354047954..d1bd9b50f 100644 --- a/Sources/TokamakStaticHTML/Views/Layout/VStack.swift +++ b/Sources/TokamakStaticHTML/Views/Layout/VStack.swift @@ -38,7 +38,7 @@ extension VStack: _HTMLPrimitive, SpacerContainer { return AnyView(HTML("div", [ "style": """ - justify-items: \(alignment.cssValue); + align-items: \(alignment.cssValue); \(hasSpacer ? "height: 100%;" : "") \(fillCrossAxis ? "width: 100%;" : "") \(spacing != defaultStackSpacing ? "--tokamak-stack-gap: \(spacing)px;" : "") diff --git a/Tests/TokamakStaticHTMLTests/RenderingTests/VisualTests.swift b/Tests/TokamakStaticHTMLTests/RenderingTests/VisualTests.swift index dc41b8f06..f380b7fff 100644 --- a/Tests/TokamakStaticHTMLTests/RenderingTests/VisualTests.swift +++ b/Tests/TokamakStaticHTMLTests/RenderingTests/VisualTests.swift @@ -147,7 +147,7 @@ final class VisualRenderingTests: XCTestCase { Color.clear .background(Material.ultraThick) } - }, + }.frame(width: 100, height: 100), as: .image(size: .init(width: 100, height: 100)), timeout: defaultSnapshotTimeout ) diff --git a/Tests/TokamakStaticHTMLTests/RenderingTests/__Snapshots__/VisualTests/testMaterial.1.png b/Tests/TokamakStaticHTMLTests/RenderingTests/__Snapshots__/VisualTests/testMaterial.1.png index bcba5e939..ae51de12d 100644 Binary files a/Tests/TokamakStaticHTMLTests/RenderingTests/__Snapshots__/VisualTests/testMaterial.1.png and b/Tests/TokamakStaticHTMLTests/RenderingTests/__Snapshots__/VisualTests/testMaterial.1.png differ diff --git a/Tests/TokamakStaticHTMLTests/__Snapshots__/HTMLTests/testDoubleTitle.1.html b/Tests/TokamakStaticHTMLTests/__Snapshots__/HTMLTests/testDoubleTitle.1.html index 1bd12a0c6..8e3604262 100644 --- a/Tests/TokamakStaticHTMLTests/__Snapshots__/HTMLTests/testDoubleTitle.1.html +++ b/Tests/TokamakStaticHTMLTests/__Snapshots__/HTMLTests/testDoubleTitle.1.html @@ -3,15 +3,15 @@