Полето за въвеждане става малко, когато пишете само в Chrome на Mac (може би проблем с CSS-Grid)

Създадох уебсайт, на който имам полета за въвеждане, които стават много малки, когато започна да въвеждам нещо. Но това поведение се появява само в Chrome на Mac (текуща версия 63). Същият уебсайт в Safari или Chrome в Windows не показва това и нямам представа какво се случва.

Ето две екранни снимки: въведете описание на изображението тук въведете описание на изображението тук

Посочих го, че проблемът е причинен от опита ми да попълня колоната на css мрежата с полето за въвеждане. Можете да видите това в (S)CSS кода, където се опитах да постигна това с една от тези опции:

// All these 3 options get me to the same bug:
justify-items: stretch;

// Same with this option:
input {
  width: 100%;
}

// Or this one:
input {
  justify-self: stretch;
}

Ето повече или по-малко минималната версия на проблема. Създадох също цигулка, но грешката не се показва на цигулка с Chrome на Mac :/

Fiddle

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <link rel="stylesheet" href="/bgcss/style.css">
</head>
<body>
  <div id="showcase" class="grid">
      <!-- OTHER STUFF I ARRANGE WITH GRID -->
      <form action="#" class="grid">
        <input type="text" name="name" placeholder="Name">
      </form>
  </div>
</body>
</html>

SCSS:

input {
  border: 0px;
  font-size: 15px;
  padding: 1.4em;
}

.grid {
  display: grid;
  align-items: center;
  justify-items: center;
}

#showcase {
  grid-template-columns: auto 180px;

  form {
    background: rgba(34, 34, 30, 0.75);
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 1ch;
    padding: 3em;
    justify-self: stretch;

    // All these 3 options get me to the same bug:
    justify-items: stretch;

    // Same with this option:
    input {
      width: 100%;
    }

    // Or this one:
    input {
      justify-self: stretch;
    }
  }
}

Надявам се някой да има идея и да ми помогне.


person Mr.Floppy    schedule 15.12.2017    source източник
comment
грешката не се показва на fiddle с Chrome на Mac, това предполага, че има някакъв друг преобладаващ стил в страницата ви, който причинява ефекта. Вероятно се прилага само върху :focus, както звучи, опитахте ли да го проверите в инструментите за разработчици? Можете да принудите фокуса и след това да видите какви стилове се прилагат от браузъра.   -  person delinear    schedule 15.12.2017
comment
@delinear Да, пробвал съм :active и :focus. Те добавят едни и същи CSS свойства на Windows и Mac. Основно добавяне на outline-offset: -2px; и контур: -webkit-focus-ring-color auto 5px;. Дори ако заменя с none и 0, възниква същият проблем.   -  person Mr.Floppy    schedule 15.12.2017
comment
Вероятно свързано (вижте долния раздел в отговора ми относно вариантите на браузъра): stackoverflow.com/q/47723114/3597276   -  person Michael Benjamin    schedule 15.12.2017
comment
Всъщност това може да е още по-подходящо: stackoverflow.com/q/44932403/3597276   -  person Michael Benjamin    schedule 15.12.2017


Отговори (1)


Наистина изглежда, че има грешка в Chrome с обработката на полета за въвеждане в комбинация с мрежовата система. Увих полетата за въвеждане в div и сега работи като чар.

Благодаря на @Michael_B, че посочи правилния отговор: https://stackoverflow.com/a/44934676/2224874

person Mr.Floppy    schedule 17.12.2017