Repository: flutter
Issue: Multiple `AnimatedSlide`s in a `Stack` with different sizes changes sibling widget's position
Labels: framework,has reproducible steps,P2,found in release: 3.10,found in release: 3.11,team-framework,triaged-framework

Bellow are two code samples. The first is working as expected and the second is not. In the first, there are three `AnimatedSlide` widgets in a stack next to each other with the same height and width. In the second example, one of the later children of the `stack` is bigger than the others and causes the children next to it to move, despite the moved widget's height, width and offset being the same compared the working example. The size and position of one child should not affect the the other given they are in a stack.

Correct:

<details><summary>Code: </summary><p>

```dart
import 'package:flutter/material.dart';

const Color darkBlue = Color.fromARGB(255, 18, 32, 47);
void main() {runApp(MyApp());}
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.dark().copyWith(scaffoldBackgroundColor: darkBlue,),
      debugShowCheckedModeBanner: false,
      home: const AnimatedSlideExample(),
    );
  }
}

class AnimatedSlideExample extends StatefulWidget {
  const AnimatedSlideExample({super.key});
  @override
  State<AnimatedSlideExample> createState() => _AnimatedSlideExampleState();
}

class _AnimatedSlideExampleState extends State<AnimatedSlideExample> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('AnimatedSlide Sample')),
      body: Column(
        children: [
          Expanded(
            child: Column(
              children: [
                Container(
                  width: 300,
                  height: 300,
                  color: Colors.red,
                  alignment: Alignment.center,
                  padding: const EdgeInsets.all(50.0),
                  child: Stack(
                    children: [
                      AnimatedSlide(
                        // ((300/2) / 30) - 0.5
                        offset: const Offset(-4.5, 0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.white, width: 30, height: 30),
                      ),
                      AnimatedSlide(
                        //(( (300/2) - 30) / 30) - 0.5
                        offset: const Offset(-3.5, 0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.blue, width: 30, height: 30),
                      ),
                      //(( (300/2) - 60) / 30) - 0.5
                      AnimatedSlide(
                        offset: const Offset(-2.5,0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.green, width: 30, height: 30),
                      ),
                    ],
                  ),
                ),
              ],
            ),
          ),
        ],
      ),
    );
  }
}
```
</p></details>


result: 

![Screenshot 2023-05-15 170040](https://github.com/flutter/flutter/assets/92773903/aee164c8-ee86-4fbe-b4a0-e629398771b4)

___

Incorrect: The white box is gone. Note that simply removing the large child in the stack makes the missing child appear.

![Screenshot 2023-05-15 165944](https://github.com/flutter/flutter/assets/92773903/1eeabcef-2de9-496e-90f0-bb650bc22810)


<details open><summary>Code: </summary><p>

```dart
import 'package:flutter/material.dart';

const Color darkBlue = Color.fromARGB(255, 18, 32, 47);
void main() {runApp(MyApp());}
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.dark().copyWith(scaffoldBackgroundColor: darkBlue,),
      debugShowCheckedModeBanner: false,
      home: const AnimatedSlideExample(),
    );
  }
}

class AnimatedSlideExample extends StatefulWidget {
  const AnimatedSlideExample({super.key});
  @override
  State<AnimatedSlideExample> createState() => _AnimatedSlideExampleState();
}

class _AnimatedSlideExampleState extends State<AnimatedSlideExample> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('AnimatedSlide Sample')),
      body: Column(
        children: [
          Expanded(
            child: Column(
              children: [
                Container(
                  width: 300,
                  height: 300,
                  color: Colors.red,
                  alignment: Alignment.center,
                  padding: const EdgeInsets.all(50.0),
                  child: Stack(
                    children: [
                      AnimatedSlide(
                        // ((300/2) / 30) - 0.5
                        offset: const Offset(-4.5, 0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.white, width: 30, height: 30),
                      ),
                      AnimatedSlide(
                        //(( (300/2) - 30) / 90) - 0.5
                        offset: const Offset(-0.8333333333, 0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.blue, width: 90, height: 90),
                      ),
                      //(( (300/2) - 120) / 30) - 0.5
                      AnimatedSlide(
                        offset: const Offset(0.5, 0),
                        duration: const Duration(milliseconds: 500),
                        curve: Curves.easeInOut,
                        child: Container(color: Colors.green, width: 30, height: 30),
                      ),
                    ],
                  ),
                ),
              ],
            ),
          ),
        ],
      ),
    );
  }
}

```
</p></details>

(tested on dartpad 3.10 and 3.7)