Actually, here is a screenshot of the problem.
Top to bottom: 1 - Chrome, 2 - Opera, 3 - Firefox, 4 - Edge.

Below I gave the code that I run (hopefully).
For super-maximum convenience, here's a codepen . It seems to me more convenient.
The basic idea is that the Gallery inscription and the logo should be positioned in the center, and the rest on the sides, but that their dimensions are not taken into account in order to center the two main elements of the inscription and the logo.transform will be used for animation, so you still need to position in the center and direct the rest categories from there.
I’m immensely grateful if you can help me figure out how to maintain flex in Firefox without crawling and rewriting the entire positioning code.
.gallerypage { margin: 0; padding: 0; background: #fff; } .gallerypage .header { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; width: 100%; height: 100px; background: gray; } .gallerypage .header a { cursor: pointer; position: absolute; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; text-align: center; white-space: pre-wrap; text-indent: -6px; line-height: 30px; font-family: "Kaushan Script", cursive; font-size: 30px; } .gallerypage .header .sketches { background-color: #fff; width: 110px; -webkit-transform: translate(-400px, 0px); -ms-transform: translate(-400px, 0px); transform: translate(-400px, 0px); } .gallerypage .header .smth { background-color: #fff; width: 140px; height: 60px; -webkit-transform: translate(-200px, 0px); -ms-transform: translate(-200px, 0px); transform: translate(-200px, 0px); } .gallerypage .header .gallery { position: static; text-indent: -14px; line-height: normal; width: 185px; height: 90px; background: gold; font-size: 60px; } .gallerypage .header .logo { position: static; width: 60px; height: 80px; background: hotpink; } .gallerypage .header .logo .vs-logo { display: block; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 60px; height: 80px; } .gallerypage .header .blog { background-color: #fff; width: 60px; height: 38px; -webkit-transform: translate(200px, 0px); -ms-transform: translate(200px, 0px); transform: translate(200px, 0px); } .gallerypage .header .about { white-space: pre-wrap; background-color: #fff; width: 100px; -webkit-transform: translate(400px, 0px); -ms-transform: translate(400px, 0px); transform: translate(400px, 0px); } <div class="gallerypage"> <div class="header"> <a class="sketches">Sketches</a> <a class="smth">Something serious</a> <a class="gallery">Gallery</a><a class="logo"></a> <a class="blog">Blog</a><a class="about">About it</a> </div> </div>
position: absoluteanddisplay:flextogether somehow work incorrectly. But this is just my guess, I have no idea what's what ( - VostokSistersmargin. - Vadim Ovchinnikov