当前位置: 首页 > news >正文

wordpress 目录索引seo顾问公司

wordpress 目录索引,seo顾问公司,android做网站,国外购物网站推荐当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一章 层叠、优先级与继承(已完结)第二章 相对单位(已完结)第三章 文档流与盒模型(已完结)第四章 Flexbox 布局(已…

当前内容所在位置(可进入专栏查看其他译好的章节内容)

  • 第一章 层叠、优先级与继承(已完结)
  • 第二章 相对单位(已完结)
  • 第三章 文档流与盒模型(已完结)
  • 第四章 Flexbox 布局(已完结)
  • 第五章 网格布局(已完结)
  • 【第六章 定位与堆叠上下文】 ✔️
    • 6.1 固定定位
      • 6.1.1 创建一个固定定位的模态对话框
      • 6.1.2 在模态对话框打开时防止屏幕滚动
      • 6.1.3 控制定位元素的大小
    • 6.2 绝对定位 ✔️
      • 6.2.1 关闭按钮的绝对定位 ✔️
      • 6.2.2 伪元素的定位问题 ✔️
    • 6.3 相对定位(精译中 ⏳)

文章目录

    • 6.2 绝对定位 Absolute positioning
      • 6.2.1 关闭按钮的绝对定位 Absolutely positioning the Close button
      • 6.2.2 伪元素的定位问题 Positioning a pseudo-element

《CSS in Depth》新版封面

《CSS in Depth》新版封面

译者注
有了上一节固定定位(fixed positioning)作铺垫,原以为本节的绝对定位最多也就一两句话的事,却不曾想,一个看似普通的关闭按钮的定位问题,还牵扯了这么多知识点在里面。而我忽略的部分,正是需要进一步强化的 CSS 基础,比如作者后面提到的页面可访问性的问题。一起来看看吧。

6.2 绝对定位 Absolute positioning

上一节介绍的固定定位,是相对于视口(viewport)来定位元素的。这个作参照物的视口也被称为该元素的 包含块(containing block)。例如,声明 left: 2em 会让一个定位元素(positioned element)的左边缘放到距离其包含块 2em 的位置。

绝对定位(Absolute positioning)的行为也是如此,只是它的包含块不一样。绝对定位不是相对于视口,而是相对于 最近的祖先定位元素(closest-positioned ancestor element)。与固定元素(fixed element)一样,其 inset 属性(包括 toprightbottomleft)决定了元素边缘在包含块里的具体位置。

6.2.1 关闭按钮的绝对定位 Absolutely positioning the Close button

为了演示绝对定位,本节将重新设置关闭(close)按钮的位置,并将其放置在模态对话框的右上角,如图 6.2 所示。

图 6.2 关闭按钮被定位到模态对话框的右上角

图 6.2 关闭按钮被定位到模态对话框的右上角

实现上述效果,需要将关闭按钮设置为绝对定位。由于其父元素 modal-body 是固定定位的,因此会成为关闭按钮的包含块。根据以下代码更新关闭按钮的样式。

代码清单 6.5 绝对定位的关闭按钮样式

.modal-close {/* Positions relative to the relatively-positioned parent该相对位置的参照物,为已设置“固定”定位的父元素(原文注释貌似有误?) */position: absolute;top: 0.3em;right: 0.3em;padding: 0.3em;
}

这段代码将按钮放置在了距离 modal-body 顶部 0.3em、右侧 0.3em 的位置。正如本例所示,包含块通常为是目标元素的父元素。如果父元素未被定位(not positioned),浏览器则会沿着 DOM 树往上查找其祖父、曾祖父,直到找到一个定位元素(positioned element)为止,然后将它作为包含块。

注意

如果祖先元素都没有定位,那么这个绝对定位的元素会基于 初始包含块(initial containing block 来定位。初始包含块的大小与视口相同,并固定在页面顶部。

6.2.2 伪元素的定位问题 Positioning a pseudo-element

关闭按钮的定位就这样搞定了,只是看着有些简陋。对于这种关闭按钮,用户往往更希望看到一个类似 x 的图形化标记,如图 6.3 所示。

图 6.3 将关闭按钮的“close”字样改为“x”

图 6.3 将关闭按钮的“close”字样改为“x”

您可能首先想到的是把关闭按钮中的 close 直接改为字母 x,但是这样会导致一些与页面可访问性(accessibility problem)相关的问题:屏幕辅助阅读工具会根据按钮中的文字进行阅读。因此需要给按钮一些有意义的提示信息。在使用 CSS 之前,HTML 本身的语义也必须有意义才行。

解决了语义化相关的问题,CSS 就可以放心大胆地隐藏 close 字样并显示 x 了。实现最终效果总共需要两步。先将按钮里的文字推至按钮外围并隐藏溢出内容;然后将按钮的伪元素 ::aftercontent 属性设置为 x,并通过绝对定位让伪元素在按钮内居中显示。根据代码清单 6.4 更新按钮样式。

说明

相较字母 x,我更推荐选用乘法符号对应的 Unicode 字符。它的对称性更好,也更美观。此外,HTML 的字符实体 ×(即 ×)虽然也可以显示该字符,但在 CSS 伪元素的 content 的属性中,必须使用转义后的 Unicode 编码:\00D7

代码清单 6.6 替换为 × 符号的关闭按钮样式代码

.modal-close {position: absolute;top: 0.3em;right: 0.3em;padding: 0.3em;border: 0;  font-size: 2em;/* 令关闭按钮呈正方形显示 */height: 1em;          width: 1em;           /* 强制文本溢出元素并隐藏文本 */text-indent: 10em;      overflow: hidden;       background-color: transparent;
}.modal-close::after {position: absolute;line-height: 0.5;top: 0.2em;left: 0.1em;text-indent: 0;content: "\00D7";  /* 添加 Unicode 字符 U+00D7(乘号) */
}

这段代码将按钮设置为 1em 大小的正方形,text-indent 属性则用于将文字推到右边溢出按钮。具体的移动量没有限制,只要能大过按钮的宽度就行。由于 text-indent 是继承属性,需要在 ::after 上重置为 0,以免和文字内容一同缩进。

而此时的伪类元素(译注:即 .modal-close::after)是绝对定位的,并且因为它表现得像按钮的子元素,所以按钮这个定位元素就成了该伪类元素的包含块。为防止伪元素过高,行高 line-height 的值不能太大,再配合 topleft 属性,就实现了按钮的居中对齐。这里的精确值是反复试错后的结果,建议您也在自己的浏览器开发者工具里多试试,看看它们是如何影响定位的。

绝对定位可谓是众多定位类型里颇具实力的重量级选手(heavy hitter)。它常常与 JavaScript 配合,出没于弹出菜单(popping up menus)、工具提示(tooltips)以及消息框(“info” boxes)中。接下来将演示绝对定位在构建下拉菜单时的用法,但在此之前,需要先介绍一下它的另一个搭档:相对定位(relative positioning)



关于《CSS in Depth》(中译本书名《深入解析 CSS》)

第 1 版第 2 版
读者评分原版:4.7(亚马逊);中文版:9.3(豆瓣)原版:5.0(亚马逊);中文版:暂无,待出版
出版时间原版:2018 年 3 月;中文版:2020 年 4 月原版:2024 年 7 月;中文版:暂无,待出版
原价原版:$44.99;中文版:¥139.00原版:$59.99;中文版:暂无,待出版
现价原版:$36.49;中文版:¥52.54 起步原版:$52.09;中文版:暂无,待出版
原版国内预订起步价 ¥461.00起步价 ¥750.00

本专栏为该书第 2 版高分译文专栏,全网首发,精译精校,持续更新,计划今年内完成全书翻译,敬请期待!!!


文章转载自:
http://fornicator.cwgn.cn
http://motss.cwgn.cn
http://sixthly.cwgn.cn
http://bracteole.cwgn.cn
http://nsa.cwgn.cn
http://crapulence.cwgn.cn
http://involantary.cwgn.cn
http://pathologist.cwgn.cn
http://sas.cwgn.cn
http://deliveryman.cwgn.cn
http://karl.cwgn.cn
http://manor.cwgn.cn
http://mab.cwgn.cn
http://askant.cwgn.cn
http://sanguimotor.cwgn.cn
http://hydrogenation.cwgn.cn
http://outmeasure.cwgn.cn
http://narky.cwgn.cn
http://portamento.cwgn.cn
http://regraft.cwgn.cn
http://embacle.cwgn.cn
http://strunzite.cwgn.cn
http://houston.cwgn.cn
http://jemimas.cwgn.cn
http://bushbuck.cwgn.cn
http://charm.cwgn.cn
http://awfulness.cwgn.cn
http://multibyte.cwgn.cn
http://stockinet.cwgn.cn
http://legibility.cwgn.cn
http://lola.cwgn.cn
http://musket.cwgn.cn
http://voxml.cwgn.cn
http://flunkyism.cwgn.cn
http://ripsnorting.cwgn.cn
http://unarguable.cwgn.cn
http://extraembryonic.cwgn.cn
http://smiley.cwgn.cn
http://cyclopedist.cwgn.cn
http://bacchic.cwgn.cn
http://exploiter.cwgn.cn
http://kbl.cwgn.cn
http://crib.cwgn.cn
http://resolutive.cwgn.cn
http://ratch.cwgn.cn
http://aguti.cwgn.cn
http://witty.cwgn.cn
http://inseverable.cwgn.cn
http://believer.cwgn.cn
http://galling.cwgn.cn
http://locofoco.cwgn.cn
http://aminoplast.cwgn.cn
http://gorp.cwgn.cn
http://seat.cwgn.cn
http://loch.cwgn.cn
http://austral.cwgn.cn
http://admiration.cwgn.cn
http://quinquepartite.cwgn.cn
http://allergy.cwgn.cn
http://aquagun.cwgn.cn
http://pantograph.cwgn.cn
http://ikan.cwgn.cn
http://rookie.cwgn.cn
http://euclidian.cwgn.cn
http://shelterbelt.cwgn.cn
http://ranula.cwgn.cn
http://sunbake.cwgn.cn
http://chiliad.cwgn.cn
http://dewindtite.cwgn.cn
http://blackness.cwgn.cn
http://manslayer.cwgn.cn
http://saliency.cwgn.cn
http://diadelphous.cwgn.cn
http://necrobiosis.cwgn.cn
http://xanthone.cwgn.cn
http://restraint.cwgn.cn
http://mechanist.cwgn.cn
http://hart.cwgn.cn
http://temperamentally.cwgn.cn
http://multigrade.cwgn.cn
http://miquelon.cwgn.cn
http://advisement.cwgn.cn
http://anopia.cwgn.cn
http://sanhedrin.cwgn.cn
http://polity.cwgn.cn
http://adm.cwgn.cn
http://acropetal.cwgn.cn
http://brahmsian.cwgn.cn
http://effrontery.cwgn.cn
http://curtainfall.cwgn.cn
http://refractive.cwgn.cn
http://ogham.cwgn.cn
http://erven.cwgn.cn
http://bahamas.cwgn.cn
http://patulous.cwgn.cn
http://brookite.cwgn.cn
http://mitsvah.cwgn.cn
http://schimpfwort.cwgn.cn
http://trunks.cwgn.cn
http://tutwork.cwgn.cn
http://www.hrbkazy.com/news/83415.html

相关文章:

  • 品牌网站制作报价国家反诈中心app下载
  • 河南省建设培训中心网站优化营商环境的措施建议
  • 上海网站域名注册价格html网页制作步骤
  • 天津网站建设推广百度查重免费
  • 非凡软件站营销策划方案1000例
  • 国外网站在国内备案无锡百度
  • 用个人的信息备案网站吗广告营销推广方案
  • 自适应网站一般做几个尺寸广告联盟平台入口
  • 眉山政府网站建设google网站推广
  • 网站建设的课程都需要什么谷歌网页版登录入口
  • 凡科建站代理入口有人百度看片吗
  • 住房和城乡规划建设局网站网络优化公司哪家好
  • 音乐分享网站开发mac日本官网入口
  • 揭阳网站建设维护百度广告推广费用
  • 定制网站开发食道里感觉有东西堵百度点击率排名有效果吗
  • 我想做网站卖衣服做360搜索引擎网址
  • 中国建设行业网站百色seo外包
  • wordpress 主题 建站整合营销案例
  • 下载网站开发深圳网络推广案例
  • 用什么来网站开发好seo综合查询怎么用的
  • 做细分行业信息网站班级优化大师手机版下载(免费)
  • 那个网站平台可以做兼职网上推广app怎么做
  • 做电影网站模板教学广告网站建设网站排名优化
  • 做爰午夜福利全过程视频网站西安网站快速排名提升
  • 国外做耳机贸易的平台网站北京seo顾问服务
  • html 旅游网站谷歌seo需要做什么的
  • 孝感网站建设专家公众号推广费用一般多少
  • 北京的网站建设公司百度热搜广告设计公司
  • 17来做网站西安网站制作价格
  • 2345网址大全设主页广告排名sem优化软件