媒体查询使您可以根据当前设备尺寸来设置元素的样式。现在流行的CSS策略是首先编写移动样式,然后在其上构建更复杂的桌面版网页样式。...下面是移动优先样式的常见用例示例,其中对于较小的设备,列的宽度为100%,但在较大的视口中,列的宽度为50%。...column”元素的宽度设置为100%; 通过使用min-width媒体查询,我们专门为最小宽度为600px(暨宽度大于600px)的viewport定义了规则。...我们设置main标签设置为flex-wrap: wrap,这个设置为允许其内部子节点在父节点中换行, flex-basis: 100% 是指我们的div节点的宽度是相对于父节点宽度的100%(图1)。...适用于桌面设备的样式,我们利用与上一节中的示例类似的媒体查询将容器main元素设置为flex-wrap: nowrap,这样可以确保子元素不会换行,通过在媒体查询中设置div为flex-basis: 33%
MDN 上这样说到: 注意: 设置一个轴为visible(默认值),同时设置另一个轴为不同的值,会导致设置visible的轴的行为会变成auto`。...注意,在图中,只有当内容比其容器长时,滚动条才可见。接下来,我们将讨论与overflow相关的longhand属性 Overflow-X 该家伙负责x轴或元素的水平边。...然而,在Safari上对iOS(12.4.1)进行测试时,滚动并没有起作用。经过反复试验,当我为子项添加宽度时,滚动起作用了,在iOS(13.3)上运行就没有问题啦。...根据MDN: -webkit-overflow-scrolling 属性控制元素在移动设备上是否使用滚动回弹效果。它有两个值: auto: 使用普通滚动, 当手指从触摸屏上移开,滚动会立即停止。...,因为最小宽度为300px,这将导致在某个点进行水平滚动。
除了前面提到的交互菜单,移动版设计主要关注的是内容。在大屏上,可以把页面的大块区域拿来做头部、主图、和菜单。然而在移动设备上,用户通常有更明确的目标。 移动版设计就是内容的设计。...首先,它告诉浏览器当解析 CSS 时将设备的宽度作为假定宽度,而不是一个全屏的桌面浏览器的宽度。其次当页面加载时,它使用 initial-scale 将缩放比设置为 100%。...固定容器(比如,设定了 width: 800px 的元素)在小屏上会超出视口范围,导致需要水平滚动条,而流式容器会自动缩小以适应视口。...在主容器中,任何列都用百分比来定义宽度(比如,主列宽 70%,侧边栏宽 30%)。这样无论屏幕宽度是多少都能放得下主容器。...在移动设备上实现表格的响应式布局 table { width: 100%; } @media (max-width: 30em) { /* 让表格所有的元素都显示为块级 */ table,
因为在触控手机上,为提升用户体验,尽可能的保证用户的可点击区域较大。 6、自适应布局模式 在编写CSS时,不建议前端工程师把容器(不管是外层容器还是内层)的宽度定死。...7、学会使用webkit-box 上一条,我们说过自适应布局模式,有些同学可能会问:如何在移动设备上做到完全自适应呢?...10、如何禁止用户旋转设备 我曾经也想禁止用户旋转设备,也想实现像某些客户端那样:只能在肖像模式或景观模式下才能正常运行。但现在我可以很负责任的告诉你:别想了!在移动版的webkit中做不到!...17、如何解决盒子边框溢出 当你指定了一个块级元素时,并且为其定义了边框,设置了其宽度为100%。...在移动设备开发过程中我们通常会对文本框定义为宽度100%,将其定义为块级元素以实现全屏自适应的样式,但此时你会发现,该元素的边框(左右)各1个像素会溢了文档,导致出现横向滚动条,为解决这一问题,我们可以为其添加一个特殊的样式
因为在触控手机上,为提升用户体验,尽可能的保证用户的可点击区域较大。 6、自适应布局模式 在编写CSS时,我不建议前端工程师把容器(不管是外层容器还是内层)的宽度定死。...7、学会使用webkit-box 上一节,我们说过自适应布局模式,有些同学可能会问:如何在移动设备上做到完全自适应呢?...10、如何禁止用户旋转设备 我曾经也想禁止用户旋转设备,也想实现像某些客户端那样:只能在肖像模式或景观模式下才能正常运行。但现在我可以很负责任的告诉你:别想了!在移动版的webkit中做不到!...17、如何解决盒子边框溢出 当你指定了一个块级元素时,并且为其定义了边框,设置了其宽度为100%。...在移动设备开发过程中我们通常会对文本框定义为宽度100%,将其定义为块级元 素以实现全屏自适应的样式,但此时你会发现,该元素的边框(左右)各1个像素会溢了文档,导致出现横向滚动条,为解决这一问题,我们可以为其添加一个特殊
在移动设备上,浏览器会显示一个水平滚动条。 ? 解决方法就是使用 flex-wrap: wrap,这样当水平空间不够时,浏览器会帮我们自动换行。...长单词和链接 当在移动屏幕上阅读一篇文章时,一个长单词或内联链接可能会导致出现水平滚动条。使用CSS word-break可以防止这种情况的发生 ?...使用伪元素 我经常使用伪元素,它们为我们提供了一种创建伪造元素的方法,主要用于装饰目的,而无需将其添加到HTML中。...使用 display: inline-block 会出现怪异的空格 为多个元素设置 display: inline-block或 display: inline,会在每个元素之间创建一个很小的空格。...水平滚动条 由于元素的宽度,有些元素会导致出现水平滚动条。 找到这个问题的原因最简单的方法就是使用 CSS outline。
-webkit-text-size-adjust: 100% 解释:在 Chrome 浏览器中只能设置大于或等于 12px 的字体大小,当设置了小于 12px 的字体大小时,浏览器按照 12px 的字体大小渲染字体...5. rel=”apple-touch-icon” 解释:在iPhone, iPad上的safari浏览器中有个将网站添加到主屏幕上的按钮,当网站设置了rel=”apple-touch-icon属性...-webkit-box-sizing:border-box 解释:当你指定了一个块级元素时,并且为其定义了边框,设置了其宽度为100%。...在移动设备开发过程中我们通常会对文本框定义为宽度100%,将其定义为块级元素以实现全屏自适应的样式,但此时你会发现,该元素的边框(左右)各1个像素会溢了文档,导致出现横向滚动条,为解决这一问题,我们可以为其添加一个特殊的样式...自定义滚动条的样式 ::-webkit-scrollbar 滚动条整体部分 ::-webkit-scrollbar-thumb 滚动条里面的小方块,能向上向下移动(或往左往右移动,取决于是垂直滚动条还是水平滚动条
注:移动设备的显著特点是屏幕小,考虑到国际社会通行的水平阅读习惯,下文我们只讨论宽度。 3.1 窄屏设备的问题 移动互联网的早期,屏幕设备的物理像素点宽度多数在 320、480、640 等。...如果浏览器和针对 PC 制作的网页都不做任何处理,那么在窄屏设备上加载网页,我们看到的效果便是默认显示网页的左上角部分,然后通过水平和竖直方向的滚动来浏览网页的其他部分。...不过,该方案依然会有很多问题: ●对缩小版页面内细节内容的浏览,依然要依靠放大和滚动,体验不好; ●如果 为 PC 设计的 网页的 CSS 宽度描述大于 980px,那么在移动端展示时,初始页面依然会有滚动条...有了定制视口的能力,我们可以轻松的做到以下几点③: ●针对较宽(比如 2000px) PC 设计的页面,我们可以设置 viewport 宽度为 2000,以使得移动设备中初始渲染的页面效果刚好不出现滚动条...不做大的代码调整的话,等比缩放类的移动端网页,在 PC 上的合理展现方式应该是页面总宽度锁定在某个值,然后水平方向居中。(如下图) ?
将导航栏样式设置为侧边栏。创建水平导航栏后,我们可以在设置垂直滚动条之前将其样式设置为垂直侧边栏。...在下一节中,我们将学习如何设置水平滚动条。设置自定义水平滚动条。您可以向网页内的容器添加水平滚动条。水平滚动条可以使用户在较短的容器内查看一系列横向内容。...将overflow-x属性的值设置为scroll可以将水平滚动条添加到容器的底部。您的网站用户将能够平稳地滚动容器中的内容。您已成功创建了水平和垂直滚动条。...让我们继续下一节,我们将讨论如何设置滚动条的样式。自定义滚动条样式您希望为网站的滚动条设置样式的原因之一是为了在整个网页上实现颜色协调。您可能希望将在网站上使用的颜色数量保持在一组最小值。...一次性样式所有滚动条。在大多数情况下,您可能希望在整个网站的所有垂直和水平滚动条上保持一致的样式。
,该方案自动帮你设置),此方案仅适用于移动端web !...拿Iphone 5s 举例,它的css像素宽度是320px,由于它的dpr=2,所以它的物理像素宽度为320 × 2 = 640px,这也就是为什么,你在5s上截了一张图,在电脑上打开,它的原始宽度是640px...我们知道,高清方案的特点就是几乎完美还原效果图,也就是说,你写了一个宽度为 7rem 的元素,那么在目前主流移动设备上都是7rem。然而,iphone 5 的宽度为640,也就是6.4rem。...就像把等屏宽的图片宽度设为100%一样。 3.问:不是 1rem = 100px吗,为什么我的代码写了一个宽度为3rem的元素,在电脑端的谷歌浏览器上宽度只有150px?...答:可以这样去理解问题的原因,如果不用高清方案,别的UI库的元素在移动设备上(假设这个设备是iphone 5好了)显示是正常的,这没有问题,然后我们在这个设备上将该页面截图放到电脑上看,发现宽度是640
frame.setVisible(true);:这是设置窗口的可见性。将参数设置为true表示窗口可见,将会显示在屏幕上。...整个代码的功能是创建一个带有标题栏的窗口容器,位置在屏幕的(100,100),大小为宽度500和高度300。最后通过设置窗口可见,使窗口显示在屏幕上。...frame.setVisible(true);:这是设置Frame框架的可见性。将参数设置为true表示窗口可见,将会显示在屏幕上。...frame.setVisible(true);:这是设置Frame框架的可见性。将参数设置为true表示窗口可见,将会显示在屏幕上。...整个代码的功能是创建一个带有滚动条的ScrollPane容器,并在ScrollPane中添加一个TextField和一个Button组件。最后通过设置窗口可见,使窗口显示在屏幕上。
在移动端下,浏览器将会出现水平滚动条。 image.png 左边:出现水平滚动条,并且项目没有换行。右边:项目换行,呈两行显示 解决方法很简单。wrapper 应该在空间不足时让项目换行。...将会在不扩展列宽度的情况下对它们进行排列,而auto-fit 则会在存在空列的时候使其宽度塌陷为 0。...为图片设置 max-width 添加图片时,定义 max-width: 100%,这样图片会在屏幕较小的时候改变大小。否则浏览器将会显示水平滚动条。...使用伪元素 无论何时,我都很喜欢使用伪元素。伪元素为我们提供了一种创建假元素的方法,主要用来装饰,同时又无需将其添加到 HTML 中。...水平滚动条 有些元素的宽度可能会导致出现一个水平滚动条。 要找到问题的根源,最简单的方法就是使用 CSS outline。Addy Osmani 写了一个方便的脚本 。
手机和 PC 之间的宽度不同 ? 我们有一组按钮。在移动设备上,我们希望它们彼此相邻(每个按钮包装器占据其父元素的50%),而在桌面设备上,每个按钮都应该占据其父元素的全部宽度。该怎么做?...CSS grid 和自动设置一个 auto 列 ? 在CSS Grid中,我们可以设置一个列为auto,这意味着它的宽度将基于它的内容长度。...在 Chrome 窗口中,滚动条总是显示出来,这是不正确和令人困惑的行为。 通过使用auto关键字,我们可以确保滚动条不会显示,除非内容高度大于它的容器。 根据MDN: 取决于用户代理。...如果我检查了子项并转到computed styles,你猜下left属性的值会是什么? ? left的默认值为16px,即使没有设置。为什么会发生这种情况?...好吧,让我继续。 假设子项必须在较小的视口中位于距左侧100像素的位置,对于桌面,它应恢复为默认位置。
在说分辨率的时候我们常常会把大的值说在前面,所以在PC端屏幕宽度比高度的值要大一点,第一个值一般是指的宽度第二个值为高度。 移动端正好相反,手机一般宽度都是小于高度,所以第一个值是宽度。...如果我故意设置操作系统分辨率为512*384(水平和垂直各缩小1倍),那么此时css定义的1px像素的盒子在屏幕中的显示的宽度比原来高分辨率的宽度增加一倍,所以CSS中的像素只是相对,不是绝对的。...在移动Web开发中就是指的CSS的逻辑像素。...如果设置一个元素为100px*100px,看起来就是屏幕的100/320 如果布局视口的宽度=device-width(设备宽度,也就是:物理像素/dpr)时,此时页面100%的宽度正好能在视觉视口中完全显示...因为手机端的浏览器会自动设置布局视口的宽度为视觉视口的宽度,所以此时:设备的布局视口==视觉视口==理想视口。
(真霸道,一个块级元素独占一行) 2、元素的高度、宽度、行高以及顶和底边距都可设置。 3、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。...内联元素特点: 1、和其他元素都在一行上; 2、元素的高度、宽度、行高及顶部和底部边距不可设置; 3、元素的宽度就是它包含的文字或图片的宽度,不可改变。 四....,块状元素的宽度都为100%。...实际上,块状元素都会以行的形式占据位置。 第二点,在流动模型下,内联元素都会在所处的包含元素内从左到右水平分布显示。...由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化,除非你在屏幕中移动浏览器窗口的屏幕位置,或改变浏览器窗口的显示大小,因此固定定位的元素会始终位于浏览器窗口内视图的某个位置,不会受文档流动影响
在说分辨率的时候我们常常会把大的值说在前面,所以在PC端屏幕宽度比高度的值要大一点,第一个值一般是指的宽度第二个值为高度。 移动端正好相反,手机一般宽度都是小于高度,所以第一个值是宽度。...如果我故意设置操作系统分辨率为512*384(水平和垂直各缩小1倍),那么此时css定义的1px像素的盒子在屏幕中的显示的宽度比原来高分辨率的宽度增加一倍,所以CSS中的像素只是相对,不是绝对的。...在移动Web开发中就是指的CSS的逻辑像素。...如果设置一个元素为100px*100px,看起来就是屏幕的100/320 如果布局视口的宽度=device-width(设备宽度,也就是:物理像素/dpr)时,此时页面100%的宽度正好能在视觉视口中完全显示...因为手机端的浏览器会自动设置布局视口的宽度为视觉视口的宽度,所以此时:设备的布局视口==视觉视口==理想视口。 看一图就明了: 普通屏幕 两倍屏 ?
比如:当我用了14px的正文字号,我可能会在一些地方用14×0.5=7px的margin,在另一些地方用14×1.5=21px的标题字号。...idealviewport是最适合移动设备的viewport,idealviewport的宽度等于移动设备的屏幕宽度,只要在css中把某一元素的宽度设为idealviewport的宽度(单位用px),那么这个元素的宽度就是设备屏幕的宽度了...第二个视口指的是视觉视口,visualviewport指的是移动设备上我们可见的区域的视口大小,一般为屏幕的分辨率的大小。...在移动端显示时,因为layoutviewport的宽度大于移动端屏幕的宽度,所以页面会出现滚动条左右移动,fixed的元素是相对layoutviewport来固定位置的,而不是移动端屏幕来固定位置的,所以会出现感觉...(2)HTML中有两个标签是默认可以产生滚动条的,一个是根元素,另一个是文本域。 (3)滚动条会占用容器的可用宽度或高度。
容器默认存在两根轴:水平的主轴(mainaxis)和垂直的交叉轴(crossaxis),项目默认沿主轴排列。 以下6个属性设置在容器上。...比如:当我用了14px的正文字号,我可能会在一些地方用14 ×0.5=7px的margin,在另一些地方用14×1.5=21px的标题字号。...那么这个元素的宽度就是设备屏幕的宽度了,也就是宽度为100%的效果。...第二个视口指的是视觉视口,visualviewport指的是移动设备上我们可见的区域的视口大小,一般为屏幕的分辨率的大小。...在移动端显示时,因为layoutviewport的宽度大于移动端屏幕 的宽度,所以页面会出现滚动条左右移动,fixed的元素是相对layoutviewport来固定位置的,而不是移动端屏幕来固定位置的
(int) 设置该组件的最小宽度 android:nextFocusDown setNextFocusDownld(int) 设置焦点在该组件上,且单击向下键时获得焦点的组件ID android:nextFocusLeft...(int) 设置滚动条淡出隐藏过程需要多少秒 android:scrol1barSize setScrollBarSize(int) 设置垂直滚动条的宽度和水平滚动条的高度 android:scrollbarStyle...设置该组件的水平滚动条的轨道对应的Drawable对象 android:scrollbarTrackVertical 设置该组件的垂直滚动条的轨道对应的Drawable对象 android:scrollbars... fill_parent: 指定子组件的高度、宽度与父容器组件的高度、宽度相同(实际上还要减去填充的空白距离)。...在每英寸160点的显示器上,1dp=1px,但随着屏幕密度的改变,dp与px的换算会发生改变,换算公式为dips=(pixs*160)/densityDpi。
领取专属 10元无门槛券
手把手带您无忧上云