简体   繁体   English

如何阻止我的键盘在移动设备上被切断?

[英]How can I stop my keyboard being cut off on mobile?

I have a wordle clone that I working through as a learning experience, and I'm trying to figure out why my keyboard is getting cut off on the left side on mobile, but can be scrolled on the right side.我有一个 wordle 克隆,作为一种学习经验,我正在尝试弄清楚为什么我的键盘在移动设备的左侧被切断,但可以在右侧滚动。 As far as I can tell, the code to set up the keyboard should be responsive.据我所知,设置键盘的代码应该是响应式的。 My code and an example of the problem are below.我的代码和问题示例如下。

 #keyboard-cont-cont { width: 100vw; overflow: visible; } #keyboard-cont { margin: 1rem 0; left: 50%; top: 50%; padding: 0vw 40vw; display: flex; overflow: auto; flex-direction: column; align-items: center; background: solid lightGray; font-family: monospace; --e: calc(100vw / 35); } #keyboard-cont div { display: flex; overflow: auto; }.center { width: 50%; }.second-row { margin: 0.5rem 0; margin: calc(var(--e) / 2); position: relative; }.keyboard-button { font-size: var(--e); font-weight: 700; padding: calc(var(--e) / 2); margin: 0 2px; cursor: pointer; text-transform: uppercase; }.center { width: 50%; }.first-row { position: relative; overflow: auto; }.second-row { margin: 0.5rem 0; position: relative; overflow: auto; }.third-row { position: relative; overflow: auto; }.keyboard-button { font-size: 1rem; font-weight: 700; padding: 0.5rem; margin: 0 2px; cursor: pointer; text-transform: uppercase; }
 <div id="keyboard-cont-cont"> <div id="keyboard-cont"> <div class="first-row"> <button class="keyboard-button">q</button> <button class="keyboard-button">w</button> <button class="keyboard-button">e</button> <button class="keyboard-button">r</button> <button class="keyboard-button">t</button> <button class="keyboard-button">y</button> <button class="keyboard-button">u</button> <button class="keyboard-button">i</button> <button class="keyboard-button">o</button> <button class="keyboard-button">p</button> </div> <div class="second-row"> <button class="keyboard-button">a</button> <button class="keyboard-button">s</button> <button class="keyboard-button">d</button> <button class="keyboard-button">f</button> <button class="keyboard-button">g</button> <button class="keyboard-button">h</button> <button class="keyboard-button">j</button> <button class="keyboard-button">k</button> <button class="keyboard-button">l</button> </div> <div class="third-row"> <button class="keyboard-button">Del</button> <button class="keyboard-button">z</button> <button class="keyboard-button">x</button> <button class="keyboard-button">c</button> <button class="keyboard-button">v</button> <button class="keyboard-button">b</button> <button class="keyboard-button">n</button> <button class="keyboard-button">m</button> <button class="keyboard-button">Enter</button> </div> </div> </div>

index.html index.html

<div id="keyboard-cont-cont">
  <div id="keyboard-cont">
      <div class="first-row">
          <button class="keyboard-button">q</button>
          <button class="keyboard-button">w</button>
          <button class="keyboard-button">e</button>
          <button class="keyboard-button">r</button>
          <button class="keyboard-button">t</button>
          <button class="keyboard-button">y</button>
          <button class="keyboard-button">u</button>
          <button class="keyboard-button">i</button>
          <button class="keyboard-button">o</button>
          <button class="keyboard-button">p</button>
      </div>
      <div class="second-row">
          <button class="keyboard-button">a</button>
          <button class="keyboard-button">s</button>
          <button class="keyboard-button">d</button>
          <button class="keyboard-button">f</button>
          <button class="keyboard-button">g</button>
          <button class="keyboard-button">h</button>
          <button class="keyboard-button">j</button>
          <button class="keyboard-button">k</button>
          <button class="keyboard-button">l</button>
      </div>
      <div class="third-row">
          <button class="keyboard-button">Del</button>
          <button class="keyboard-button">z</button>
          <button class="keyboard-button">x</button>
          <button class="keyboard-button">c</button>
          <button class="keyboard-button">v</button>
          <button class="keyboard-button">b</button>
          <button class="keyboard-button">n</button>
          <button class="keyboard-button">m</button>
          <button class="keyboard-button">Enter</button>
      </div>
  </div>
</div>

style.css样式.css

keyboard-cont-cont {
  width: 100vw;
  overflow: visible;
}

keyboard-cont {
  margin: 1rem 0;
  left: 50%;
  top: 50%;
  padding: 0vw 40vw;
  display: flex;
  overflow: auto;
  flex-direction: column;
  align-items: center;
  background: solid lightGray;
  font-family: monospace;
  --e: calc(100vw / 35);
}

keyboard-cont div {
  display: flex;
  overflow: auto;
}

.center {
  width: 50%;
}

.second-row {
  margin: 0.5rem 0;
  margin: calc(var(--e) / 2);
  position: relative;
}

.keyboard-button {
  font-size: var(--e);
  font-weight: 700;
  padding: calc(var(--e) / 2);
  margin: 0 2px;
  cursor: pointer;
  text-transform: uppercase;
}

.center {
  width: 50%;
}

.first-row {
  position: relative;
  overflow: auto;
}

.second-row {
  margin: 0.5rem 0;
  position: relative;
  overflow: auto;
}

.third-row {
  position: relative;
  overflow: auto;
}

.keyboard-button {
  font-size: 1rem;
  font-weight: 700;
  padding: 0.5rem;
  margin: 0 2px;
  cursor: pointer;
  text-transform: uppercase;
}

Mobile w/ Media Query带媒体查询的移动设备在此处输入图像描述 Desktop w/ Media Query带媒体查询的桌面在此处输入图像描述

You can use media query to make it responsive according to screen size.您可以使用媒体查询使其根据屏幕尺寸做出响应。

 #keyboard-cont-cont { width: 100vw; overflow: visible; } #keyboard-cont { margin: 1rem 0; left: 50%; top: 50%; padding: 0vw 40vw; display: flex; overflow: auto; flex-direction: column; align-items: center; background: solid lightGray; font-family: monospace; --e: calc(100vw / 35); } #keyboard-cont div { display: flex; overflow: auto; }.center { width: 50%; }.second-row { margin: 0.5rem 0; margin: calc(var(--e) / 2); position: relative; }.keyboard-button { font-size: var(--e); font-weight: 700; padding: calc(var(--e) / 2); margin: 0 2px; cursor: pointer; text-transform: uppercase; }.center { width: 50%; }.first-row { position: relative; overflow: auto; }.second-row { margin: 0.5rem 0; position: relative; overflow: auto; }.third-row { position: relative; overflow: auto; }.keyboard-button { font-size: 1rem; font-weight: 700; padding: 0.5rem; margin: 0 2px; cursor: pointer; text-transform: uppercase; } @media screen and (max-width: 450px) {.keyboard-button{ font-size: 1rem; font-weight: 600; padding: 0.1rem; } } @media not all and (min-resolution:450px) { @supports (-webkit-appearance:none) {.keyboard-button { font-size: 1rem; font-weight: 600; padding: 0.1rem; } }}
 <div id="keyboard-cont-cont"> <div id="keyboard-cont"> <div class="first-row"> <button class="keyboard-button">q</button> <button class="keyboard-button">w</button> <button class="keyboard-button">e</button> <button class="keyboard-button">r</button> <button class="keyboard-button">t</button> <button class="keyboard-button">y</button> <button class="keyboard-button">u</button> <button class="keyboard-button">i</button> <button class="keyboard-button">o</button> <button class="keyboard-button">p</button> </div> <div class="second-row"> <button class="keyboard-button">a</button> <button class="keyboard-button">s</button> <button class="keyboard-button">d</button> <button class="keyboard-button">f</button> <button class="keyboard-button">g</button> <button class="keyboard-button">h</button> <button class="keyboard-button">j</button> <button class="keyboard-button">k</button> <button class="keyboard-button">l</button> </div> <div class="third-row"> <button class="keyboard-button">Del</button> <button class="keyboard-button">z</button> <button class="keyboard-button">x</button> <button class="keyboard-button">c</button> <button class="keyboard-button">v</button> <button class="keyboard-button">b</button> <button class="keyboard-button">n</button> <button class="keyboard-button">m</button> <button class="keyboard-button">Enter</button> </div> </div> </div>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM