专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

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

  这是展示广告或为自己的内容添加促销块的完美方式。它还为您的布局提供了一个有趣的视觉突破,从重复的网格中脱颖而出。
  为了更好地理解我们将要构建的内容,有一个随附的演示。但是,由于此演示使用一些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; } }结论   就是这样,伙计们!我希望你和我一样喜欢这个小练习,它给了你一些关于如何在网格布局中嵌入广告项目的想法。此外,通过以我们在此处介绍的方式使用模运算符 (),您可以创建具有动态模式的多列布局。   与往常一样,非常感谢您的阅读!

    欧足联要求英国保证警力来护送欧洲杯队伍预计难以有回应根据泰晤士报首席记者MartynZiegler的最新报道,欧足联正在向申办2028年欧洲杯的英国和爱尔兰施加压力,以确保所有球队大巴都有警察护送,以防止开赛被意外情况所延误。这项担欧洲杯足球预测北爱尔兰VS芬兰北京时间2023年3月27日凌晨2点45分,北爱尔兰将在欧洲杯预选赛H组对阵芬兰。北方队的世界排名第59位,虽然看起来只是欧洲二流球队的水平,但实际上这支球队有着非常顽强的韧性。2弗里克高兴训练内容已见效主场欧洲杯要像阿根廷用表现换成功直播吧3月26日讯北京时间今天凌晨,德国队在主场20击败秘鲁队。德国队主帅弗里克在赛后谈了球队的表现与问题阵型的变化明年主场欧洲杯的目标等话题。关于球队的表现弗里克我认为大家都可以最新出炉全国人均体育场地面积2。62平方米,高还是低?朋友们好,又见面了,咱接着唠,唠唠体育场地调查数据来源于国家体育总局官网2023年3月23日,国家体育总局官网发布了2022年全国体育场地统计调查数据。从数据看,人均场地面积为2。(体育)梦百合杯世界围棋公开赛中国区预选赛於之莹逆转晋级新华社南京3月25日电(记者王恒志杨丁淼)第五届梦百合杯世界围棋公开赛中国区预选赛25日在江苏如皋结束女子职业组第四轮较量,於之莹七段逆转击败汪雨博四段,闯入最终轮。本次预选赛分设(体育)足球欧锦赛预选赛西班牙胜挪威当日,在西班牙马拉加举行的足球欧锦赛预选赛A组第一轮比赛中,西班牙队以3比0战胜挪威队。3月25日,西班牙队球员何塞卢在进球后庆祝。新华社法新3月25日,西班牙队球员卡瓦哈尔(左)五六十岁女人,帽子尽量不要戴军帽和贝雷帽,这些更减龄好像一不小心就混到了老阿姨这个级别,年轻时可爱的针织帽蓬蓬裙都还没穿够,又怎么能容许自己就这样在年龄中慢慢变土变丑呢?如果你也不想向年龄低头,那可就来对地方了有帽子在手,50也可以从巴哈马走向世界的模特莎丝卡特(ChaseCarter)莎丝卡特(ChaseCarter)职业模特,时尚年龄26体重54公斤身高1米78国籍巴哈马出生日期1997年12月10日莎丝卡特(ChaseCarter)是一位来自巴哈马的时尚模特上海街头偶遇阮经天,手持电子烟动作熟练,与弟弟同框酷似双胞胎3月24日,有网友在上海街头偶遇阮经天和他的弟弟,对方透露,先是看到他的弟弟,觉得非常帅气,之后才认出了阮经天,两人站在街头抽电子烟,画面曝光后,迅速引发热议。当天阮经天身穿黑色V这就是现在的巴黎街头,一切触目惊心看到上面这张图片了吧,你知道这是哪里吗?说出来,你可能都不信。这就是现在的巴黎,一个自带魔力的艺术之都文化之都浪漫之都,一个引无数文人墨客美女竞折腰的巴黎。海明威就曾经感慨写道如果西安正式开通三大景区旅游直通车西安市的友友们及其他城市的友友们,到西安旅游时,请问你们都去过陕西省西安市临近的翠华山景区南五台景区陕西考古博物馆这三大特色景区嘛?没去过的话,周末节假日有机会快去安排一下,万物复
    东西两大洋南北无强敌?强占之地并非天选之地!欧亚大陆才是中心说起美国,那毫无疑问,世界第一大国。如今我依然记得,初中地理老师跟我们说的一句话来形容美国优越的地理位置,东西两大洋,南北无强敌!此话出口的同时,满眼充满了羡慕和赞美,仿佛北美这块泸州高新爱琴海购物公园项目推介会在酒城巨洋圆满举行日前,爱琴海集团旗下全新项目泸州高新爱琴海购物公园(下文简称泸州高新爱琴海)项目推介会圆满举行。自2020年以来,四川省自然资源投资集团爱琴海集团泸州市高投集团强强联手。在双国企背银保监会再谈提前还房贷难部分银行已制定服务方案近期办结数量明显增长办理时限有所缩短银保监会再谈提前还房贷难部分银行已制定服务方案近期办结数量明显增长办理时限有所缩短财联社2月24日电,近期银保监会再次召开专题会议,要求银行加快处理积压申请,做好提前还款服务。银保紧急裁员6000人!全球最大中资鞋厂也撑不住了!传越南宝元鞋厂将裁员6000人本周二,据外媒取得的一份胡志明市劳动局文件显示,宝成集团旗下的越南宝元鞋厂将裁退近3000名工厂员工,稍晚一些时间,还有3000名员工将不再续约。本周让人人买得起房,让炒房客退出,让房子保值升值,让经济蓬勃发展有人天天喊房价下跌,恶意唱衰房地产是别有用心,这些人不是傻就是坏,不是没脑子就是穷,一定会付出代价!房地产是支柱产业,只有促进房地产平稳健康,让房价稳定小幅上涨,才符合发展大势,有111web3香港概念币异军突起,能成为下一个比特币牛市的新起点?2022年10月31日,香港特区政府财经事务及库务局在香港金融科技周开幕礼上,正式发布了有关香港虚拟资产发展的政策宣言,也就是后来大家常说的香港宣言。圈内很多专业人士认为香港宣言具前有百岁贷,又来连心贷层出不穷贷款产品背后,是怎样的焦虑?2月财经新势力这是熊猫贝贝的第1573篇原创文章2023年,对于中国的银行业来说,绝对说得上是焦虑和冲击交织的一个艰难开年。银行这个行当家大业大,而且还有国家金融特权护体,要说艰难行贿买官!中石油独山子石化腐败案曝光近期,新疆天利石化股份有限公司(下称天利股份)要上市,这家公司依托中石油下属的独山子石化,公司业绩快速攀升。2021年,公司实现收入25。3亿元,净利润2。68亿元。包括董事长总经菜鸟布局海外获成功,Q3财报外部收入耀眼,同比增长高达27在2月23日,阿里巴巴集团一如往常发布了2023财年三季度的相关财报。这本来没什么特别的,然而让人眼前一亮的是,在经济寒潮之下,菜鸟物流居然靠着出海业务,实现了不小的增长。在这个本晶晨股份2022年净利7。29亿元同比下降10。21中证智能财讯晶晨股份(688099)2月24日晚间披露2022年度业绩快报,公司实现营业收入55。46亿元,同比增长16。09归母净利润7。29亿元,同比下降10。21扣非净利润6明朝最邪门的机构,官员见了直哆嗦,锦衣卫见了绕道走明朝是一个由汉族建立的大一统王朝,共传十六帝,享国二百七十六年。朱元璋初定天下,建国号意在大中,既而祈天,乃得大明。表示承袭自韩山童韩林儿父子的大小明王之号,又称皇明,史称明朝明代
    友情链接:快好知快生活快百科快传网中准网文好找聚热点快软件