You can use the FractionalSizedBox to size a widget based on percentages
https://api.flutter.dev/flutter/widgets/FractionallySizedBox-class.html
FractionallySizedBox(
widthFactor: 1,
heightFactor: 0.31,
child: Container(
...
),
),