Heim  >  Artikel  >  Backend-Entwicklung  >  php与css 标签云效果

php与css 标签云效果

WBOY
WBOYOriginal
2016-07-25 08:56:46933Durchsuche
  1. function createTagCloud($tags)
  2. {
  3. //I pass through an array of tags
  4. $i=0;
  5. foreach($tags as $tag)
  6. {
  7. $id = $tag['id']; //the tag id, passed through
  8. $name = $tag['tag']; //the tag name, also passed through in the array
  9. //using the mysql count command to sum up the tutorials tagged with that id
  10. $sql = "SELECT COUNT(*) AS totalnum FROM tutorials WHERE tags LIKE '%".$id."%' AND published = 1";
  11. //create the resultset and return it
  12. $res = mysql_query($sql);
  13. $res = mysql_fetch_assoc($res);
  14. //check there are results ;)
  15. if($res)
  16. {
  17. //build an output array, with the tag-name and the number of results
  18. $output[$i]['tag'] = $name;
  19. $output[$i]['num'] = $res['totalnum'];
  20. }
  21. $i++;
  22. }
  23. /*this is just calling another function that does a similar SQL statement, but returns how many pieces of content I have*/
  24. $total_tuts = $this->getNumberOfTutorials();
  25. //ugh, XHTML in PHP? Slap my hands - this isn't best practice, but I was obviously feeling lazy
  26. $html = '
      ';
    • //iterate through each item in the $output array (created above)
    • foreach($output as $tag)
    • {
    • //get the number-of-tag-occurances as a percentage of the overall number
    • $ratio = (100 / $total_tuts) * $tag['num'];
    • //round the number to the nearest 10
    • $ratio = round($ratio,-1);
    • /*append that classname onto the list-item, so if the result was 20%, it comes out as cloud-20*/
    • $html.= '
    • '.$tag['tag'].'
    • ';
    • }
    • //close the UL
    • $html.= '
    ';
  27. return $html;
  28. }
复制代码

2,css代码部分 /*删除默认的列表样式,使之成为一个普通的清单列表*/

  1. .home-item ul.tagcloud
  2. {
  3. list-style-type:none;
  4. margin:0px;
  5. padding:0px;
  6. }
  7. /*设置li的样式*/
  8. .home-item ul.tagcloud li
  9. {
  10. display:inline !important;
  11. margin-right:15px;
  12. line-height:2em;
  13. }
  14. .home-item ul.tagcloud li a
  15. {
  16. display:inline;
  17. }
  18. /*标签云的效果*/
  19. .home-item ul.tagcloud li.cloud-10 a
  20. {
  21. font-size:110%;
  22. }
  23. .home-item ul.tagcloud li.cloud-20 a
  24. {
  25. font-size:120%;
  26. }
  27. .home-item ul.tagcloud li.cloud-30 a
  28. {
  29. font-size:130%;
  30. }
  31. /*************************************
  32. you get the idea, i'm skipping a few
  33. *************************************/
  34. .home-item ul.tagcloud li.cloud-90 a
  35. {
  36. font-size:190%;
  37. }
  38. .home-item ul.tagcloud li.cloud-100 a
  39. {
  40. font-size:200%;
  41. }
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php写excel文件的实现代码 Nächster Artikel:php image图像函数集