Skip to content

transition:slide looks different (buggy) on Safari #4712

Open
@palask

Description

@palask

Describe the bug
I am using transition:slide in order to slide in a div element after the user presses the button with the arrow pointing down. With Chrome and Firefox on Windows it looks perfect, however on Safari (iPadOS) the inner contents overlap with the button during the transition. Or to be more precise, the inner elements of #lookupAreaContent do not follow the behavior of #lookupAreaContent itself.

To Reproduce
Simplified version:

<div>
	{#if v_lookupArea}
	<div id="lookupAreaContent" transition:slide>
		<div>
			<a href="https://www.google.com" target="_blank">test 1.</a>
		</div>
		<div>
			<a href="https://www.google.com" target="_blank">test 2.</a>
		</div>
		<div>
			<i>add_circle</i>
		</div>
	</div>
	{/if}
	<i on:click={toggleLookupArea}>expand_more</i>
</div>

<script>
import { slide } from "svelte/transition";
let v_lookupArea = false;

function toggleLookupArea(e) {
	v_lookupArea = !v_lookupArea;
}
</script>

Expected behavior
Here is what it looks like on Chrome: https://streamable.com/crvf1n
And here is the buggy Safari behavior: https://streamable.com/ldb1gh

Information about your Svelte project:

  • Your browser and the version: Chrome 81 (correct), Safari (broken)

  • Your operating system: Windows 10 (correct), iPadOS 13.4.1 (broken)

  • Svelte version (Please check you can reproduce the issue with the latest release!): 3.20.1

  • Whether your project uses Webpack or Rollup: Rollup

Severity
It is just a design flaw, nothing major.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions