范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

如何在网格布局中嵌入随机内容

  这是展示广告或为自己的内容添加促销块的完美方式。它还为您的布局提供了一个有趣的视觉突破,从重复的网格中脱颖而出。
  为了更好地理解我们将要构建的内容,有一个随附的演示。但是,由于此演示使用一些PHP代码,因此需要服务器才能运行。
  可以从此 GitHub 存储库下载项目文件(https://github.com/tutsplus/How-to-Embed-Random-Content-Inside-a-Grid-Layout)。
  通过服务器运行演示,请注意两件事:  嵌入式横幅  重新加载页面时,横幅图像会发生变化。  了解布局
  在前面的教程中,我们使用自己的标记重新创建了一个这样的教程列表。
  标记
  我们使用简单的HTML来构建结构。自动化并将数据内容存储在 PHP 数组中。在这里,我们将使用 PHP,但无论语言或 CMS/框架如何,逻辑都将保持不变。我们应该遍历源代码并检索帖子。
  我们的数据内容格式如下所示:  $articles      = array(   array(     "title"      => "Quick Tip: Create a Very Simple Parallax Effect With CSS & JavaScript",     "image"      => "https://s3-us-west-2.amazonaws.com/s.cdpn.io/162656/parallax-pre.jpg",     "link"       => "https://webdesign.tutsplus.com/tutorials/quick-tip-how-to-build-a-dead-simple-parallax-effect-with-css-javascript--cms-33061",     "categories" => array(       "CSS",       "JavaScript",     ),   ),   array(     "title"      => "How to Build a Static Portfolio Page With CSS & JavaScript",     "image"      => "https://s3-us-west-2.amazonaws.com/s.cdpn.io/162656/chart-pre.png",     "link"       => "https://webdesign.tutsplus.com/tutorials/how-to-build-a-portfolio-page-with-css-javascript--cms-32933",     "categories" => array(       "CSS",       "JavaScript",     ),   ),        // more articles here  );
  这是我们的循环逻辑:  <?php if ( ! empty( $articles ) ) : ?>        
    <?php foreach ( $articles as $key => $article ) : ?>
  1. " target="_blank"> "<?php">
      <?php foreach ( $article["categories"] as $cat ) : ?>
    1. <?php echo $cat; ?>
    2. <?php endforeach; ?>

    " target="_blank"> <?php echo $article["title"]; ?>

  2. <?php endforeach; ?>
<?php endif; ?>   如前所述,根据你将要使用的语言或CMS,情况会发生变化。例如,WordPress有一个用于所有主要查询的 内置循环。 <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php endwhile; else : ?>

<?php esc_html_e( "Sorry, no posts matched your criteria." ); ?> <?php endif; ?>风格   除了标记之外,我们还将保留上一教程中的大多数样式。我们只会进行一些更改以使布局响应。   以下是所有样式: :root { --black: #3a3a3a; --white: #fff; --green: #49b293; } * { margin: 0; padding: 0; } img { display: block; max-width: 100%; height: auto; } ol { list-style: none; } a { text-decoration: none; color: inherit; } body { margin: 50px 0; color: var(--black); font: 1rem/1.3 sans-serif; } .container { max-width: 1200px; padding: 0 15px; margin: 0 auto; } h1 { text-align: center; margin-bottom: 2rem; } h1 a { text-decoration: underline; } .posts { display: grid; grid-gap: 1.5rem; } .posts .post { width: 300px; margin: 0 auto; border: 1px solid rgba(0, 0, 0, 0.1); } .posts > li { background: #fafafa; } .posts .post-title { font-size: 1.3rem; } .posts .post-title:hover { text-decoration: underline; } .posts figcaption { padding: 1rem; } .posts .post-categories { margin-bottom: 0.75rem; font-size: 0.75rem; } .posts .post-categories * { display: inline-block; } .posts .post-categories li { margin-bottom: 0.2rem; } .posts .post-categories a { padding: 0.2rem 0.5rem; border-radius: 1rem; border: 1px solid; line-height: normal; transition: all 0.1s; } .posts .post-categories a:hover { background: var(--green); color: var(--white); } @media (min-width: 500px) { .posts { grid-template-columns: repeat(2, 1fr); } .posts .post { width: auto; } } @media (min-width: 600px) { .posts { grid-template-columns: repeat(3, 1fr); } } @media (min-width: 900px) { .posts { grid-template-columns: repeat(4, 1fr); } }   现在让我们假设我们要在网格内放置横幅。在这种情况下,我们只会使用图片横幅,但在您的情况下,您可以插入来自不同来源的广告、轮播、视频或您喜欢的任何其他内容。   我们的横幅必须满足以下要求: 它们应该在每五列之后出现。在我们的例子中,有 12 个帖子,所以我们的网格将包含两个横幅。当然,在您的情况下,您可以拥有更多。 在每个页面加载时,它们应该随机出现,这意味着某些横幅不会有任何固定的位置。 此外,嵌入的横幅应该是唯一的,这意味着单个横幅不会在同一页面中出现两次。   下面是我们想要生成的布局示例:   如前所述,横幅将随机出现,因此在另一个页面加载时,我们可能会看到不同的横幅,如下所示:   为了实现此行为,我们将使用不同的 PHP 数组函数(、 array_diff 、 array_push )。 array_keysarray_rand   让我们记下我们将遵循的步骤: 将所有横幅(来自 Unsplash)存储在数组内,并从该数组中获取密钥。 $images 初始化数组,我们将在其中添加要添加到网格的每个横幅的键。默认情况下,它将为空。 $exclude_images_keys 在循环中,我们将检查当前元素的索引是否不为 0 并且能被 5 整除。 如果发生这种情况,我们将比较 和 数组。我们将返回它们的唯一值(如果有),并将它们存储在数组中。 $images_keys$exclude_images_keys$in_items 从数组中获取一个随机密钥。 $in_items 将此键添加到数组中,以从将来的选择中排除关联的横幅。 $exclude_images_keys 使用此键选择横幅并将其放置在网格中。   以下是负责此功能的 PHP 代码: <?php // 1 $images = array( "banner1.jpg", "banner2.jpg", "banner3.jpg", "banner4.jpg", "banner5.jpg", "banner6.jpg", ); $images_keys = array_keys( $images ); $exclude_images_keys = array(); foreach ( $articles as $key => $article ) : // 3 if ( 0 !== $key && 0 === $key % 5 ) : // 4 $in_items = array_diff( $images_keys, $exclude_images_keys ); // 5 $random_image_key = array_rand( $in_items ); // 6 array_push( $exclude_images_keys, $random_image_key ); // 7 $random_image = $images[ $random_image_key ]; ?>

  • "banner"
  • <?php endif; ... endforeach;   以及我们横幅的附加 CSS: .posts .banner img { width: 100%; height: 100%; object-fit: cover; } @media (min-width: 900px) { .posts .banner { grid-column: span 2; } }结论   就是这样,伙计们!我希望你和我一样喜欢这个小练习,它给了你一些关于如何在网格布局中嵌入广告项目的想法。此外,通过以我们在此处介绍的方式使用模运算符 (),您可以创建具有动态模式的多列布局。   与往常一样,非常感谢您的阅读!

    官渡古镇的冬樱花绽放有着千年历史的官渡古镇是古滇文化的发祥地之一,古时商贾云集,高塔辉映,史称小云南,现有国家省市区级文物保护单位10余处,文物古迹30余处。冬日暖阳照春城,官渡古镇的冬樱花已经纷纷扬太昊陵庙会,41万摊位卖压缩馍,仅能使用33天!摊主半个月回本今天一则新闻登上热搜。河南太昊陵庙会来临,景区内摊位租金拍卖价41万,摊主用来售卖压缩馍,使用时间却仅有33天!记者采访41万租金能回本吗?摊主霸气回复现在这种情况下,15天回本是江南六大古镇南浔古镇江南古镇众多,尤以江南六大古镇最负盛名,又以南浔古镇最为个性。南浔并不难寻,它隶属于浙江省湖州市南浔区,太湖南岸,地处江浙沪两省一市交界处。明清时期为江南蚕丝名镇,是一个人文资源充广西田林有座古镇叫定安,一位摄影人十年时光用镜头记录它的美一叶扁舟渔歌唱晚,群峰倒影水光潋滟。舟在画中行,峰在水上漂。这,就是定安,一个同时拥有厚重历史和秀美景观的桂西小镇。(定安饶珍珠美文)全国重点文物保护单位西林教案发生地驮娘江景清水来自汉代的烟火气,广州博物馆藏汉代模型明器出版广州博物馆对馆藏汉代模型明器进行系统整理编写而成的图册广州博物馆藏汉代模型明器由广东人民出版社出版。全书涵盖广州博物馆现藏汉代模型明器286件(套),图录以图片为主,并附图版说明和初游怀化市野生动植物园有感初春时期,遇上风和日丽的日子,人最有户外活动的冲动。今天刚好又是个好天气,我们几个老同学相约,去城郊的市野生动植物园游玩,因为我们从没去过,想一睹野生动物的风采,顺便在野外走一走,花海装饰了你的照片,你装饰了北山的画卷二月二龙抬头,人在百花深处。摄影人也要抬头,本片为无人机航拍,摄于长沙北山镇。经过连续阴雨天气,终于等来了一个温暖的晴天。此时,亦是花期正盛,赏梅的最佳时节。长沙县北山森林公园就是北京国家植物园蜡梅迎春绽放中国日报2月22日电(记者姜东)2023年2月22日,随着气温回升,北京国家植物园内百余株蜡梅陆续进入观赏期,春意盎然,吸引众多游客前来观赏拍照。位于国家植物园北园的卧佛寺素来是京选星计划市足管中心积极备战2025年全运会2月19日,重庆市足球运动管理中心(以下简称市足管中心)推荐的40名优秀体育苗子,在奥体中心参加重庆市优秀竞技后备人才选星计划集中测试活动。据悉,市足管中心希望通过选星计划同时甄选网传杜兆才被抓,多位媒体人辟谣假的,人今天一直在上班北京时间2月20日,网络上流传出一段视频,一位男子在下飞机的时候是被相关人员架着出来的,消息称此人是中国足协党委书记杜兆才。但多位媒体人对此进行了辟谣。媒体人赵震写道杜兆才今天一直为企业提供技术研发支持等服务,四川成立游戏创新发展中心2月22日,在四川成都举办的网络游戏创新发展大会上,四川省游戏创新发展中心正式成立。红星新闻记者在现场获悉,该中心入驻成都高新区瞪羚谷,将为企业提供技术研发支持创作生产引导出版预审
    315晚会,相比车的质量问题,特斯拉安全性最应该被罚!315晚会即将到来,从2022年12月和2023年1月投诉榜单来看与往年有相当一部分车型重叠,也有号称国货之光的车型首次上榜。对于今非昔比的国内市场而言,今年的315或许更有看点。一加Ace2V评测目标卷死友商,一部满足80用户的千元机欢迎来到,神猴评机栏目!下一期想听什么歌可以在评论区点歌哦!很多人都喜欢叫我猴子,认为我是孙悟空的粉丝,其实并不是这样,因为我在读小学的时候QQ上出现了一个名为悠嘻猴的QQ表情,一平行世界是否存在?平行世界(ParallelUniverses)是指与我们自身的宇宙同时存在的其他世界。在这些世界中,不同的历史和事件可能发生,包括不同的物理规律和基本粒子,因此它们可能具有不同的性shell实现九九乘法表带颜色输出(简易版)shell实现九九乘法表要求1。打印输出九九乘法表两层for循环即可,外层打印行,内层打印列2。输出带颜色颜色写法为E字景色颜色字颜色m字符串0m如E131m红色0m3。输出对齐横没到4月发布就不算晚?魅族20定档3月30日,企业还换logo了?头条创作挑战赛虽然从2月中下旬开始魅族科技每天就以2张3张官微PPT在宣传卖点从2月23日宣传36月超长质保2月24日宣传散热总面积高达36242mm,2月26日宣传悬浮点胶3。0上百吨澳洲掺杂金条卖到中国?真相是中新网3月9日电(中新财经刘阳禾宫宏宇)近日,澳大利亚广播公司报道称,该国著名的珀斯铸币厂(ThePerthMint)涉嫌将上百吨不符合中国上海黄金交易所要求的金条卖到了中国,而且中国联通云牵手国产CPU龙芯3C5000100自主架构龙芯中科官方宣布,近日,中国联通旗下联通云自主可控云与龙芯3C5000服务器成功适配,国产虚拟化云平台容器云平台均实现了对LoongArch自主架构的兼容支持。全新升级的联通云自主三胜一负!湖人势如破竹杀进西部第九湖人上周赛程3月2日湖人123117雷霆3月4日森林狼110102湖人3月6日勇士105113湖人3月8日灰熊103112湖人上周的四场比赛中,湖人除了输掉与森林狼的比赛,其余的三18分12板4盖帽,篮网中锋打动火箭,斯通给出二换一报价火箭队今天在主场迎战篮网队,这场比赛大家都不看好火箭能赢球,而结果也正符合球迷们的预测。火箭队在主场只抵抗了两节,下半场篮网队发力之后年轻的火箭就崩盘了。最终没有能够在主场拿下篮网国际篮联官宣,中国男篮世界排名27位,乔尔杰维奇信心大增CBA常规赛第三阶段的比赛如火如荼的进行中,中国男篮在结束了过去一个阶段世预赛比赛任务之后,乔尔杰维奇也领衔教练团队针对球队的比赛录像进行总结复盘,并且针对第三阶段的联赛球员继续考前瞻湖南伢子出战U20亚洲杯,国青末战胜算几何?红网时刻新闻3月8日讯(记者符洹雨)小伙子们,好样的!在不被外界看好,首战1比2被日本队逆转的情况下,北京时间3月6日晚,中国队的球员们在U20亚洲杯第二轮小组赛中,以2比0的比分