CINXE.COM
Devlive 开源社区 - OSCHINA - 中文开源技术交流社区
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <meta http-equiv="Content-Language" content="zh-CN"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> <meta name="referrer" content="always"/> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"/> <title>Devlive 开源社区 - OSCHINA - 中文开源技术交流社区</title> <meta name="keywords" content="开源,OSC,开源软件,开源硬件,开源网站,开源社区,java开源,perl开源,python开源,ruby开源,php开源,开源项目,开源代码"/> <meta name="description" content="OSCHINA.NET 是目前领先的中文开源技术社区。我们传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台"/> <link rel="stylesheet" type="text/css" href="https://static.oschina.net/new-osc/js/utils/semantic-ui/semantic.min.css?t=1671184943000"/> <link type="text/css" rel="stylesheet" href="https://static.oschina.net/new-osc/dist/css/space.2541783b.css"> <script type="text/javascript">window.__STATIC_DOMAIN = "https://static.oschina.net";</script> <script src="https://static.oschina.net/new-osc/js/utils/jquery.min.js"></script> <link rel="shortcut icon" type="image/x-icon" href="https://static.oschina.net/new-osc/img/favicon.ico"/> <link rel="alternate" type="application/rss+xml" title="最新开源项目" href="https://www.oschina.net/project/rss"/> <link rel="alternate" type="application/rss+xml" title="最新开源资讯" href="https://www.oschina.net/news/rss"/> <link rel="alternate" type="application/rss+xml" title="最新问题列表" href="https://www.oschina.net/question/rss"/> <link rel="alternate" type="application/rss+xml" title="最新翻译列表" href="https://www.oschina.net/translate/rss"/> <link rel="alternate" type="application/rss+xml" title="最新博客列表" href="https://www.oschina.net/blog/rss"/> <link rel="alternate" type="application/rss+xml" title="推荐博客列表" href="https://www.oschina.net/blog/rss?show=more"/> <link rel="alternate" type="application/rss+xml" title="推荐软件列表" href="https://www.oschina.net/project/rss?show=recomms"/> <link rel="alternate" type="application/rss+xml" title="最新代码分享列表" href="https://www.oschina.net/code/rss"/> <link rel="alternate" type="application/rss+xml" title="OSCHINA - 源码列表" href="https://www.oschina.net/code/source_rss"/> <link rel="alternate" type="application/rss+xml" title="昇腾Ascend最新文章" href="https://www.oschina.net/groups/rss?ident=ascend"/> <link rel="alternate" type="application/rss+xml" title="Llama中文社区最新文章" href="https://www.oschina.net/groups/rss?ident=Llama2-Chinese"/> <link rel="alternate" type="application/rss+xml" title="大模型最新文章" href="https://www.oschina.net/groups/rss?ident=llm"/> <link rel="alternate" type="application/rss+xml" title="非结构化数据最新文章" href="https://www.oschina.net/groups/rss?ident=unstructured-data"/> <link rel="alternate" type="application/rss+xml" title="大前端最新文章" href="https://www.oschina.net/groups/rss?ident=cross-front"/> <link rel="alternate" type="application/rss+xml" title="开发技能最新文章" href="https://www.oschina.net/groups/rss?ident=skill"/> <link rel="alternate" type="application/rss+xml" title="数据库最新文章" href="https://www.oschina.net/groups/rss?ident=database"/> <link rel="alternate" type="application/rss+xml" title="云计算最新文章" href="https://www.oschina.net/groups/rss?ident=cloud"/> <link rel="alternate" type="application/rss+xml" title="飞桨专区最新文章" href="https://www.oschina.net/groups/rss?ident=paddlepaddle"/> <link rel="alternate" type="application/rss+xml" title="OpenHarmony专区最新文章" href="https://www.oschina.net/groups/rss?ident=openharmony"/> <link rel="alternate" type="application/rss+xml" title="开源治理最新文章" href="https://www.oschina.net/groups/rss?ident=osgovernance"/> <link rel="alternate" type="application/rss+xml" title="银河麒麟专区最新文章" href="https://www.oschina.net/groups/rss?ident=kylinos"/> <link rel="alternate" type="application/rss+xml" title="OneOS最新文章" href="https://www.oschina.net/groups/rss?ident=oneos"/> <link rel="alternate" type="application/rss+xml" title="程序人生最新文章" href="https://www.oschina.net/groups/rss?ident=programmer"/> <link rel="alternate" type="application/rss+xml" title="软件架构最新文章" href="https://www.oschina.net/groups/rss?ident=architecture"/> <link rel="alternate" type="application/rss+xml" title="行业趋势最新文章" href="https://www.oschina.net/groups/rss?ident=trend"/> <link rel="alternate" type="application/rss+xml" title="硬件 & IoT最新文章" href="https://www.oschina.net/groups/rss?ident=hardware-iot"/> <link rel="alternate" type="application/rss+xml" title="AI & 大数据最新文章" href="https://www.oschina.net/groups/rss?ident=ai-bigdata"/> <link rel="alternate" type="application/rss+xml" title="云智慧AIOps技术社区最新文章" href="https://www.oschina.net/groups/rss?ident=cloudwise"/> <link rel="alternate" type="application/rss+xml" title="OpenVINO 中文社区最新文章" href="https://www.oschina.net/groups/rss?ident=openvino"/> <link rel="alternate" type="application/rss+xml" title="摸鱼专区最新文章" href="https://www.oschina.net/groups/rss?ident=fishfish"/> <link rel="alternate" type="application/rss+xml" title="HarmonyOS开发者社区最新文章" href="https://www.oschina.net/groups/rss?ident=huawei"/> <link rel="alternate" type="application/rss+xml" title="PostgreSQL最新文章" href="https://www.oschina.net/groups/rss?ident=postgresql"/> <link rel="alternate" type="application/rss+xml" title="LF开源软件学园最新文章" href="https://www.oschina.net/groups/rss?ident=lfossa"/> <link rel="alternate" type="application/rss+xml" title="OSCTraining最新文章" href="https://www.oschina.net/groups/rss?ident=OSCTraining"/> <link rel="alternate" type="application/rss+xml" title="EdgeX 中文社区最新文章" href="https://www.oschina.net/groups/rss?ident=edgex-foundry"/> <link rel="alternate" type="application/rss+xml" title="信息安全最新文章" href="https://www.oschina.net/groups/rss?ident=cyber-security"/> <link rel="alternate" type="application/rss+xml" title="运维最新文章" href="https://www.oschina.net/groups/rss?ident=ops"/> <link rel="alternate" type="application/rss+xml" title="软件测试最新文章" href="https://www.oschina.net/groups/rss?ident=test"/> <link rel="alternate" type="application/rss+xml" title="网络技术最新文章" href="https://www.oschina.net/groups/rss?ident=network"/> <link rel="alternate" type="application/rss+xml" title="游戏开发最新文章" href="https://www.oschina.net/groups/rss?ident=game"/> <link rel="alternate" type="application/rss+xml" title="多媒体处理最新文章" href="https://www.oschina.net/groups/rss?ident=media"/> <link rel="alternate" type="application/rss+xml" title="DevOps最新文章" href="https://www.oschina.net/groups/rss?ident=devops"/> <link rel="alternate" type="application/rss+xml" title="区块链最新文章" href="https://www.oschina.net/groups/rss?ident=blockchain"/> </head> <body> <val data-name="site_url" data-value="https://www.oschina.net"></val> <val data-name="space_user_url" data-value="https://my.oschina.net/devlive"></val> <val data-name="space_user_id" data-value="6981961"></val> <val data-name="g_user_url" data-value=""></val> <val data-name="api_prefix" data-value="/action"></val> <val data-name="g_user_code" data-value=""></val> <val data-name="g_user_id" data-value=""></val> <val data-name="g_user_bind_phone" data-value="false"></val> <val data-name="g_user_name" data-value=""></val> <val data-name="g_user_small_portrait" data-value=""></val> <val data-name="g_user_large_portrait" data-value="https://www.oschina.net/new-osc/img/portrait.gif"></val> <val data-name="g_user_osc_staff" data-value="false"></val> <val data-name="login_page" data-value="https://www.oschina.net/home/login?goto_page=https%3A%2F%2Fmy.oschina.net%2Fdevlive"></val> <val data-name="rocommendGrayStatus" data-value="true"></val> <val data-name="weixinAppId" data-value="wx880def15e694b905"></val> <val data-name="weixinTimestamp" data-value="1743802741612"></val> <val data-name="weixinNonceStr" data-value="b3300172-5d64-4ac2-8a5f-83ef32c8d598"></val> <val data-name="weixinSignature" data-value="9eb86be0dd5debec5224242712b6271ded679d6f"></val> <val data-name="weixinShareUrl" data-value="https://my.oschina.net/devlive"></val> <val data-name="is_detail_page" data-value="false"></val> <val data-name="secondaryHeaderEnable" data-value=""></val> <div class="ui left inverted sidebar vertical menu" id="mobileNavSidebar"> <a href="https://www.oschina.net" class="item">首页</a> <a href="https://www.oschina.net/project" class="item project">开源软件</a> <a href="https://www.oschina.net/question" class="item question">问答</a> <a href="https://www.oschina.net/blog" class="item blog">博客</a> <a href="https://www.oschina.net/translate" class="item translate">翻译</a> <a href="https://www.oschina.net/news" class="item news">资讯</a> <a href="https://gitee.com/explore?utm_source=oschina&utm_medium=link-index&utm_campaign=home" class="item gitee" target="_blank">Gitee</a> <a href="https://zb.oschina.net/projects/list.html" class="item" target="_blank">众包</a> <a href="https://www.oschina.net/event" class="item">活动</a> <a href="https://www.oschina.net/groups" class="item">专区</a> <a href="https://www.oschina.net/event/ych" class="item meetup">源创会</a> <a href="https://www.oschina.net/question/topic/masteronline" class="item">高手问答</a> <a href="https://www.oschina.net/question/topic/osc-interview" class="item">开源访谈</a> <a href="https://my.oschina.net/editorial-story" class="item">周刊</a> <a href="https://www.oschina.net/company" class="item">公司开源导航页</a> </div> <div class="ui right inverted sidebar vertical menu" id="mobileUserSidebar"> <a class="item" href="https://www.oschina.net/home/login?goto_page=https%3A%2F%2Fmy.oschina.net%2Fdevlive">登录</a> <a class="item" href="https://www.oschina.net/home/reg?goto_page=https%3A%2F%2Fmy.oschina.net%2Fdevlive">注册</a> </div> <div class="pusher"> <div class="layout-header-box fixed" id="mobileHeaderNavMenu"> <div class="ui secondary inverted menu inner"> <a class="icon item toggle-mobile-nav-sidebar"> <i class="large content icon"></i> </a> <div class="logo back-to-top-toggle"><img src="https://static.oschina.net/new-osc/img/logo_new.svg" alt="OSCHINA"></div> <a class="icon item toggle-mobile-user-sidebar"> <i class="large user outline icon"></i> </a> </div> </div> <div class="small-header-box small-header-box--responsive small-header-box--fixed"> <div class="small-header-box__wrapper"> <div class="small-header-box__inner"> <div class="small-header-box__inner__box"> <div class="main-bar"> <div class="main-bar__inner"> <div class="main-bar__row main-bar__row--full"> <div class="head-bar"> <a class="logo" href="https://www.oschina.net" aria-label="OSCHINA" title="OSCHINA"> <svg width="155" height="44" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><g><circle fill="#21B351" cx="22" cy="22" r="22"></circle><path d="M21.63 27.27c-2.926.02-5.312-1.89-5.472-5.454-.16-3.325 2.766-5.555 5.552-5.614 3.207-.08 5.132 3.583 5.132 3.583l8.278-3.046S31.712 7.92 22.492 7.92c-8.619 0-14.572 5.972-14.572 14.075 0 7.207 5.612 14.393 14.372 14.075 9.62-.359 12.908-8.82 12.908-8.82l-8.499-2.806c.02-.04-1.723 2.826-5.07 2.826" fill="#FFF"></path></g><path d="M62.957 27.5c3.1 0 4.588-2.583 4.588-5.5 0-2.893-1.537-5.5-4.588-5.5s-4.59 2.607-4.59 5.5c0 2.917 1.49 5.5 4.59 5.5zm0 3.3c-4.955 0-8.397-3.85-8.397-8.8 0-4.974 3.417-8.8 8.397-8.8 4.906 0 8.396 3.946 8.396 8.8 0 4.95-3.393 8.8-8.396 8.8zm15.402-17.6c1.366 0 4.784.502 4.784 2.391 0 .933-.635 1.77-1.636 1.77-1 0-1.782-.718-3.246-.718-1.05 0-2.002.55-2.002 1.555 0 2.463 8.153.885 8.153 7.054 0 3.42-2.88 5.548-6.249 5.548-1.88 0-5.931-.43-5.931-2.678 0-.933.635-1.698 1.635-1.698 1.148 0 2.514.933 4.101.933 1.611 0 2.49-.885 2.49-2.057 0-2.822-8.153-1.124-8.153-6.672 0-3.348 2.807-5.428 6.054-5.428zM85.29 22c0-4.974 3.417-8.8 8.396-8.8 1.782 0 5.248.574 5.248 2.678 0 .861-.61 1.602-1.513 1.602-1.001 0-1.684-.837-3.735-.837-3.026 0-4.589 2.511-4.589 5.429 0 2.845 1.587 5.285 4.59 5.285 2.05 0 2.88-1.005 3.88-1.005 1.099 0 1.611 1.076 1.611 1.626 0 2.296-3.686 2.822-5.492 2.822-4.955 0-8.396-3.85-8.396-8.8zm15.597 6.791V15.21c0-1.196.78-1.866 1.83-1.866s1.831.67 1.831 1.866v5.07h7.664v-5.07c0-1.196.782-1.866 1.831-1.866 1.05 0 1.83.67 1.83 1.866V28.79c0 1.196-.78 1.866-1.83 1.866s-1.83-.67-1.83-1.866v-5.213h-7.665v5.213c0 1.196-.78 1.866-1.83 1.866s-1.831-.67-1.831-1.866zm17.184 0V15.21c0-1.196.78-1.866 1.83-1.866s1.83.67 1.83 1.866V28.79c0 1.196-.78 1.866-1.83 1.866s-1.83-.67-1.83-1.866zm5.711 0V15.21c0-1.196.781-1.866 1.83-1.866.465 0 1.221.36 1.539.79l7.737 10.115h.049v-9.04c0-1.195.781-1.865 1.83-1.865 1.05 0 1.831.67 1.831 1.866V28.79c0 1.196-.78 1.866-1.83 1.866-.464 0-1.196-.36-1.538-.79l-7.738-9.995h-.048v8.92c0 1.195-.782 1.865-1.831 1.865-1.05 0-1.83-.67-1.83-1.866zm15.988-.598l4.906-13.008c.415-1.1 1.367-1.985 2.612-1.985 1.294 0 2.197.837 2.612 1.985l4.784 13.008c.146.383.195.718.195.885 0 .933-.781 1.579-1.684 1.579-1.025 0-1.538-.527-1.782-1.244l-.732-2.248h-6.786l-.732 2.224c-.244.741-.757 1.268-1.758 1.268-.976 0-1.806-.718-1.806-1.674 0-.383.122-.67.171-.79zm7.493-11.263l-2.318 6.935h4.637l-2.27-6.935h-.049z" fill="#111" fill-rule="nonzero"></path></g></svg> </a> </div> <div class="nav-bar" role="navigation"> <ul class="nav-bar__tabs"> <li class="tabs-item"> <a href="https://www.oschina.net/news" class="tabs-link news">资讯</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/project" class="tabs-link project">软件</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/blog" class="tabs-link blog">博客</a> </li> <li class="tabs-item tabs-item--new tabs-item--new-show"> <a href="https://www.oschina.net/oscTweet" class="tabs-link oscTweet" target="_blank" style="color: #db1104;">动弹</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/groups/" class="tabs-link group">专区</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/question" class="tabs-link question">问答</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/event" class="tabs-link event">活动</a> </li> <li class="tabs-item"> <a href="https://tool.oschina.net/" class="tabs-link explore">工具</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/action/visit/ad?id=1581" class="tabs-link zb" target="_blank">培训</a> </li> <li class="tabs-item"> <a href="https://www.oschina.net/app" class="tabs-link app" style="font-family: 'Roboto';">APP</a> </li> <li class="tabs-item"> <a href="https://gitee.com?utm_source=oschina&utm_medium=link-index&utm_campaign=home" target="_blank" class="tabs-link gitee">Gitee</a> </li> <li class="tabs-item"> <style> .new-media { cursor: pointer; } .tabs-item .media-list { position: fixed; top: 71px; right: 0; display: none; opacity: 0; transition: opacity 0.5s ease-in-out; color: #fff; padding: 10px; background-color: rgba(0, 0, 0, .8); width: 100vw; padding-bottom: 25px; } .tabs-item .media-list .nav-list { display: flex; justify-content: center; align-items: center; } .tabs-item .media-list .nav-list .media-list-item { display: flex; flex-direction: column; justify-content: center; align-items: center; line-height: 18px; font-size: 12px; width: 140px; } .tabs-item .media-list .nav-list .media-list-item img { width: 80px; height: 80px; margin-bottom: 10px; } .tabs-item .media-list .nav-list .media-frame-line { width: 1px; height: 130px; background-color: #fff; margin: 0 20px; } </style> <a class="tabs-link new-media">新媒体<i class="dropdown icon"></i></a> <div class="media-list"> <div class="nav-list"> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-8ac121f27aea51b6707575661ba5cd345df.png" alt="OSC 直播栏目"> <span>OSC 直播栏目</span> <span>技术领航</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-c965a0388a464b34ff3435f13e088347f6b.png" alt="OSC 公众号"> <span>OSC 公众号</span> <span>硬核 + 嬉笑怒骂</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-2a441ddb8e5de4869b6b01864260ec7053e.png" alt="OSC 微博"> <span>OSC 微博</span> <span>技术圈大 V 出没</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-78d92293b283f9cfb4215f29f4efb6f69ce.jpg" alt="OSC 视频号"> <span>OSC 视频号</span> <span>AI 百科</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-17ffeae584429e74b42d7c3422049c561e7.png" alt="OSC 今日头条"> <span>OSC 今日头条</span> <span>微头条显行业百态</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-4a006dc7c74a78b44ecead3e58920709530.jpg" alt="LFOSSA 公众号"> <span>LFOSSA 公众号</span> <span>LF 开源软件学园</span> </div> <div class="media-frame-line"></div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-4dadd644e02a0ca625d618a09941ec9c3c6.jpg" alt="Gitee AI 公众号"> <span>Gitee AI 公众号</span> <span>大模型托管平台</span> </div> <div class="media-list-item"> <img src="https://oscimg.oschina.net/oscnet/up-daaed369fe9b8ce7f75e2d0bbf20a4a4088.jpg" alt="Gitee 服务号"> <span>Gitee 服务号</span> <span>研发管理解决方案</span> </div> </div> </div> <script> var setTimeShow document.addEventListener('DOMContentLoaded', function () { var mediaList = document.querySelector('.tabs-item .media-list'); var tabsLink = document.querySelector('.tabs-link.new-media'); tabsLink.addEventListener('mouseover', function () { clearTimeout(setTimeShow); mediaList.style.display = 'block'; mediaList.style.opacity = '1'; sendRequest(); }); mediaList.addEventListener('mouseover', function () { clearTimeout(setTimeShow); mediaList.style.opacity = '1'; }); mediaList.addEventListener('mouseout', function () { mediaList.style.opacity = '0'; setTimeShow = setTimeout(function () { mediaList.style.display = 'none'; }, 500); }); tabsLink.addEventListener('mouseout', function () { mediaList.style.opacity = '0'; setTimeShow = setTimeout(function () { mediaList.style.display = 'none'; }, 500); }); }); function sendRequest() { fetch('https://apiv1.oschina.net/MjAyMi8xLzE2/gtags/v1/action/visit?type=index_hover') .then(response => response.json()) .then(data => { }) .catch(error => { }); } </script> </li> <img style="display:none" crossorigin="use-credentials" src="https://apiv1.oschina.net/MjAyMi8xLzE2/gtags/v1/action/visit?type=all"></img> </ul> </div> </div> </div> </div> </div> <div class="small-header-box__inner__box"> <div class="search-box"> <form action="https://www.oschina.net/search" role="search"> <div class="search-box__inner"> <input class="search-box__input" aria-label="搜索" placeholder="大家都在搜..." name="q" value="" type="text" required /> <button type="submit" class="search-box__button"><i class="search icon"></i></button> </div> </form> </div> <div class="user-bar"> <ul class="user-bar__links"> <a class="item" href="https://www.oschina.net/home/login?goto_page=https%3A%2F%2Fmy.oschina.net%2Fdevlive">登录</a> <a class="item" href="https://www.oschina.net/home/reg?goto_page=https%3A%2F%2Fmy.oschina.net%2Fdevlive">注册</a> </ul> </div> </div> </div> </div> </div> <div id="mainScreen" class="grey"> <div class="ui container"> <val data-name="g_space_title" data-value="Devlive 开源社区"></val> <x-foo-define data-define="space-home-index"></x-foo-define> <div class="ui grid space-home"> <div class="row"> <div class="five wide computer five wide tablet sixteen wide mobile column"> <val data-name="gitee_contributions_url" data-value="https://gitee.com/contributions.js?email=65CFEF177380C280767A1076779202D5DE590B07307FFD42"></val> <div class="space-sidebar"> <div class="ui basic center aligned segment sidebar-section user-info"> <div class="avatar-wrap"> <div class="osc-avatar-level _120x120"> <div class="avatar-image"> <a class="avatar-image__inner" href="https://my.oschina.net/devlive"> <div class="osc-avatar large-portrait _120x120" title="Devlive开源社区" data-user-id="6981961"> <img src="https://oscimg.oschina.net/oscnet/up-a6e7356e950e5d37c263498625fc442c.jpg!/both/200x200" alt="Devlive开源社区" title="Devlive开源社区"/> </div> </a> </div> <div class="avatar-level"> <div class="level-circle" title="经验值: 1306 / 1500"> <svg width="120" height="120" viewbox="0 0 120 120"> <circle cx="60" cy="60" r="57" stroke-width="6" stroke="#FFFFFF" fill="none"></circle> <circle cx="60" cy="60" r="57.5" stroke-width="5" stroke="#EEEEEE" fill="none"></circle> <circle cx="60" cy="60" r="57.5" stroke-width="5" stroke="#E2D4B9" fill="none" transform="matrix(0, -1, 1, 0,0, 120)" stroke-dasharray="314.3106666666667 361"></circle> </svg> </div> <div class="level-label" title="等级: Lv3"> <img src="https://static.oschina.net/new-osc/img/level/lv3_small.png" srcset="https://static.oschina.net/new-osc/img/level/lv3_small.png 1x, https://static.oschina.net/new-osc/img/level/lv3_small@2x.png 2x" alt="Lv3"> </div> </div> </div> </div> <div class="user-text"> <h3 class="user-name"> <div class="user-name__inner"> <span class="name">Devlive开源社区</span> <i class="gender blue mars small icon"></i> </div> </h3> <div class="user-signature">The Devlive Software Foundation</div> </div> <div class="ui mini images medals"> <img class="ui image popup-oscer" src="https://static.oschina.net/uploads/medals/slogo1541992849287.png" alt=""> <div class="ui flowing popup hidden items"> <div class="medal-popup-box item"> <img class="ui image" src="https://static.oschina.net/uploads/medals/logo1541993136198.png"> <div class="content"> <h3 class="header">开源项目作者</h3> <div class="desc text">作为一个开源项目作者,是时候站出来拯救世界了!</div> <div class="extra text"> 领取时间:2024/03/28 <div class="text">领取条件:开源项目被开源中国收录的开发者可领取</div> </div> </div> </div> </div> <img class="ui image popup-oscer" src="https://static.oschina.net/uploads/medals/slogo1571642927469.png" alt=""> <div class="ui flowing popup hidden items"> <div class="medal-popup-box item"> <img class="ui image" src="https://static.oschina.net/uploads/medals/logo1571642927469.png"> <div class="content"> <h3 class="header">Gitee 达人</h3> <div class="desc text">我的开源软件已入驻码云 Gitee,快来看看吧!</div> <div class="extra text"> 领取时间:2024/03/28 <div class="text">领取条件:开源软件使用码云 Gitee 源码地址</div> </div> </div> </div> </div> </div> <div class="user-statistics-wrap"> <div class="ui four tiny statistics user-statistics"> <div class="statistic"> <div class="value"> 1.3K </div> <div class="label"> 经验值 </div> </div> <div class="statistic"> <div class="value"> 1.4K </div> <div class="label"> 开源豆 </div> </div> <a class="statistic" href="https://my.oschina.net/devlive/followers"> <div class="value" data-user-id="6981961" data-followers-count="23" data-format="true"> 23 </div> <div class="label"> 粉丝 </div> </a> <a class="statistic" href="https://my.oschina.net/devlive/following"> <div class="value" data-user-id="6981961" data-following-count="1" data-format="true"> 1 </div> <div class="label"> 关注 </div> </a> </div> </div> <div class="item action clearfix"> <a class="ui green button follow-btn" data-user-id="6981961" data-follow-status="1"><i class="heart outline icon"></i><span class="text">关注</span></a> <a class="ui green basic button send-message-btn" data-user-id="6981961" data-user-name="Devlive开源社区"><i class="envelope outline icon"></i>私信</a> <div class="ui basic dropdown more dropdown-more"> <div class="ui icon green basic button menu-btn"><i class="bars icon"></i></div> <div class="menu"> <a class="item" href="https://www.oschina.net/question/ask?user=6981961" target="_blank"><i class="comment outline icon"></i>提问</a> <a class="item" user-block data-id="6981961" data-status="0"><i class="ban icon"></i><span class="text">加灰</span></a> <a class="item ban" ban-report data-id="6981961" data-obj-type="32" data-url="https://my.oschina.net/devlive"> <i class="flag icon"></i>举报 </a> </div> </div> </div> </div> <div class="ui basic segment software-works sidebar-section"> <h3 class="header">软件作品</h3> <div class="ui divided items"> <div class="item "> <img class="ui avatar image" src="/new-osc/img/default-software-logo.png" alt="View Shadcn UI" title="View Shadcn UI"> <div class="content"> <a href="https://www.oschina.net/p/view-shadcn-ui" target="_blank" class="ui small header ">View Shadcn UI</a> <div class="extra">基于 Tailwind CSS 构建的 Vue3 组件库</div> </div> <div class="ui basic label software-collect-btn" style="border:0" data-id="66515" data-obj-type="1" data-user-id="6981961" data-favorited="$isFavorited"> <span class="number">21</span> <i class="star icon grey outline "></i> </div> </div> <div class="item "> <img class="ui avatar image" src="https://static.oschina.net/uploads/logo/infosphere_CZ7vx.png" alt="InfoSphere" title="InfoSphere"> <div class="content"> <a href="https://www.oschina.net/p/infosphere" target="_blank" class="ui small header ">InfoSphere</a> <div class="extra">开源 Wiki 系统</div> </div> <div class="ui basic label software-collect-btn" style="border:0" data-id="66662" data-obj-type="1" data-user-id="6981961" data-favorited="$isFavorited"> <span class="number">10</span> <i class="star icon grey outline "></i> </div> </div> <div class="item "> <img class="ui avatar image" src="https://static.oschina.net/uploads/logo/badgehub_KtSFA.png" alt="Badge Hub" title="Badge Hub"> <div class="content"> <a href="https://www.oschina.net/p/badgehub" target="_blank" class="ui small header ">Badge Hub</a> <div class="extra">徽标生成平台</div> </div> <div class="ui basic label software-collect-btn" style="border:0" data-id="74746" data-obj-type="1" data-user-id="6981961" data-favorited="$isFavorited"> <span class="number">1</span> <i class="star icon grey outline "></i> </div> </div> <div class="item "> <img class="ui avatar image" src="/new-osc/img/default-software-logo.png" alt="PageForge" title="PageForge"> <div class="content"> <a href="https://www.oschina.net/p/pageforge" target="_blank" class="ui small header ">PageForge</a> <div class="extra">静态页面生成与部署平台</div> </div> <div class="ui basic label software-collect-btn" style="border:0" data-id="74758" data-obj-type="1" data-user-id="6981961" data-favorited="$isFavorited"> <span class="number">4</span> <i class="star icon grey outline "></i> </div> </div> <div class="item "> <img class="ui avatar image" src="https://static.oschina.net/uploads/logo/lightcall_WqVUg.png" alt="LightCall" title="LightCall"> <div class="content"> <a href="https://www.oschina.net/p/lightcall" target="_blank" class="ui small header ">LightCall</a> <div class="extra">声明式服务调用框架</div> </div> <div class="ui basic label software-collect-btn" style="border:0" data-id="74792" data-obj-type="1" data-user-id="6981961" data-favorited="$isFavorited"> <span class="number">2</span> <i class="star icon grey outline "></i> </div> </div> </div> </div> <div class="ui basic segment sidebar-section"> <h3 class="header">技能雷达</h3> <div class="ui list"> <div class="item"> <b>专长领域:</b> WEB开发, 游戏开发, 运维/系统/网络管理, , </div> </div> <div class="content panel-skills-radar"> <div class="skills-radar"> <div class="radar-wrap" radar data-user-id="6981961" data-skills-num="5" data-detail-url="https://my.oschina.net/devlive/radar" data-container=".panel-skills-radar" data-empty-show> <div class="radar-map"></div> </div> </div> </div> </div> <div class="ui basic gitee-contributions segment sidebar-section"> <h3 class="header">Gitee 贡献 <i class="question circle icon popup-gitee-help-toggle"></i></h3> <div class="ui popup popup-gitee-help"> <p><b>Gitee</b> (<a href="https://gitee.com" target="_blank">gitee.com</a>) 是 OSCHINA 推出的代码托管平台,支持 Git 和 SVN,提供免费的私有仓库托管。目前已有近 1000 万的开发者选择 Gitee。</p> <p><b>Gitee 贡献</b> 反映用户在 Gitee 上评论、Fork、Star、Push等操作的次数。</p> <p class="register-gitee"><a class="ui small button green" href="https://gitee.com" target="_blank">免费开通 Gitee</a></p> </div> <div class="content"> <a class="git-pendant"> <div class="contribution-box clearfix"> <div class="vertical"> <div class="box">1</div> <div class="box">2</div> <div class="box">3</div> <div class="box">4</div> <div class="box">5</div> <div class="box">6</div> <div class="box">7</div> </div> </div> <div class="gitee-statistics"> <p>连击 <span class="hit-count"></span> 天</p> <p class="text-muted"> <span>fork: <span class="fork-count"></span></span> <span>star: <span class="star-count"></span></span> </p> </div> </a> </div> </div> <div class="ui tiny modal ban_speak_user_modal"> <div class="header">禁言:Devlive开源社区</div> <div class="content"> <p class="ban_speak_user_message"></p> <div class="ui form"> <div class="grouped fields"> <div class="fields" style="display: flex;align-items: center;"> <div class="three wide field"> <div class="ui radio gag_type_radio checkbox "> <input type="radio" name="gag_type" value="1" checked="" tabindex="0" class="hidden"> <label>禁言</label> </div> </div> <div class="three wide field" style="margin-left: -25px;"> <input type="text" name="gag_time" id="gag_time"/> </div> <div class="six wide field"> 天 </div> </div> <div class="field"> <div class="ui radio gag_type_radio checkbox"> <input type="radio" name="gag_type" value="2" tabindex="0" class="hidden"> <label>永久禁言</label> </div> </div> <div class="field"> <div class="ui radio gag_type_radio checkbox"> <input type="radio" name="gag_type" value="3" tabindex="0" class="hidden"> <label>解除禁言</label> </div> </div> </div> </div> </div> <div class="actions"> <div class="ui button green ban_speak_user_positive">确定</div> <div class="ui cancel button">取消</div> </div> </div> <div class="data" is_admin="" ></div> </div> </div> <div class="eleven wide computer eleven wide tablet sixteen wide mobile column"> <div class="ui inverted dimmer space-index-container-loader"> <div class="ui text loader">加载中</div> </div> <div class="space-index-container" > <div class="hidden-scroll global-mb "> <div class="ui green pointing secondary big menu space-tab"> <input type="hidden" name="currentTab" value="newest"> <div class="ui dropdown item active blog-dropdown"> <input name="catalogId" type="hidden" value="0"> <div class="text">全部博文</div> <i class="dropdown icon"></i> <div class="menu"> <a href="?tab=newest&catalogId=0&sortType=time" class="item" data-value="0"> <span class="description">20</span> <span class="text">全部博文</span> </a> <a href="?tab=newest&catalogId=12779031&sortType=time" class="item" data-value="12779031"> <span class="description">2</span> <span class="text" title="DataCap">DataCap</span> </a> <a href="?tab=newest&catalogId=16276601&sortType=time" class="item" data-value="16276601"> <span class="description">17</span> <span class="text" title="Tailwind CSS:现代化开发实战指南">Tailwind CSS:现代化开发实战指南</span> </a> <a href="?tab=newest&catalogId=12592279&sortType=time" class="item" data-value="12592279"> <span class="description">0</span> <span class="text" title="工作日志">工作日志</span> </a> <a href="?tab=newest&catalogId=12592280&sortType=time" class="item" data-value="12592280"> <span class="description">1</span> <span class="text" title="日常记录">日常记录</span> </a> <a href="?tab=newest&catalogId=12592281&sortType=time" class="item" data-value="12592281"> <span class="description">0</span> <span class="text" title="转贴的文章">转贴的文章</span> </a> </div> </div> <a href="?tab=news" class=" item">资讯</a> <a href="?tab=question" class=" item">问答</a> <a href="?tab=comment" class=" item">评论</a> <div class="ui secondary right large menu search-form-wrap"> <div class="ui dropdown item sort-dropdown" style="padding: 0.85em 0.7em;"> <input name="sortType" type="hidden" value="time"> <div class="text">排序</div> <i class="dropdown icon"></i> <div class="menu"> <a href="?tab=newest&catalogId=0&sortType=time" class="item" data-value="time" title="按最后发布时间"> <span class="text">按时间</span> </a> <a href="?tab=newest&catalogId=0&sortType=vc" class="item" data-value="vc" title="按阅读量"> <span class="text">按阅读量</span> </a> </div> </div> <div class="ui dropdown item history-dropdown " style="padding: 0.85em 0.7em;"> <input name="history" type="hidden" value=""> <div class="text">创作历程</div> <i class="dropdown icon"></i> <div class="menu"> <a href="?tab=newest" class="item" data-value="all"> <span class="text">全部</span> </a> <div class="year-title"> 2025年(19篇) </div> <a href="?tab=history&year=2025&month=03&history=202503&monthCount=13" class="item" data-value="202503"> <span class="description">13</span> <span class="text">2025/03</span> </a> <a href="?tab=history&year=2025&month=02&history=202502&monthCount=6" class="item" data-value="202502"> <span class="description">6</span> <span class="text">2025/02</span> </a> <div class="year-title"> 2024年(1篇) </div> <a href="?tab=history&year=2024&month=06&history=202406&monthCount=1" class="item" data-value="202406"> <span class="description">1</span> <span class="text">2024/06</span> </a> </div> </div> <form class="item search-form" action="https://www.oschina.net/search"> <div class="ui icon small input"> <input type="hidden" name="u" value="6981961"/> <input type="text" placeholder="搜索Devlive开源社区的博客" name="q" value=""/> <i class="search link icon"></i> </div> </form> </div> </div> </div> <div class="ui basic segment article-list" id="newestBlogList"> <div class="ui relaxed divided items list-container space-list-container"> <div class="item blog-item" data-id="17891308"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17891308" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第四章:高级特性与最佳实践 - 第三节 - Tailwind CSS 性能优化策略 </a> <div class="description"> <p class="line-clamp">在使用 Tailwind CSS 开发大型项目时,性能优化是一个不可忽视的话题。本节将从构建性能、运行时性能、文件体积等多个维度,详细介绍 Tailwind CSS 的性能优化策略。 构建优化 优化扫描范围 ...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=性能优化">性能优化</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=构建优化">构建优化</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=运行时性能">运行时性能</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=文件体积">文件体积</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=CSS选择器">CSS选择器</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式优化">响应式优化</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/13 08:54</div> <div class="item"><i class="eye icon"></i> 56</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17891308#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17883877"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17883877" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 提示词优化魔法:让 AI 为你打造完美指令 </a> <div class="description"> <p class="line-clamp">如何让 AI 帮你写出完美提示词 提示词是与 AI 交流的关键,但很多人不知道如何清晰地表达自己的需求。其实有一个简单而强大的秘诀:让 AI 自己来帮你构建提示词! 详细步骤指南: 明确你的需...</p> </div> <div class="extra"> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=12592280" class="catalog-name-link">日常记录</a></div> <div class="item">03/12 11:45</div> <div class="item"><i class="eye icon"></i> 81</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17883877#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17882921"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17882921" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第四章:高级特性与最佳实践 - 第二节 - Tailwind CSS 插件开发和扩展 </a> <div class="description"> <p class="line-clamp">插件系统是 Tailwind CSS 的核心特性之一,它允许我们扩展和定制框架的功能。通过开发插件,我们可以添加新的工具类、组件和功能,使 Tailwind CSS 更好地满足项目需求。 插件开发基础 插件结...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=插件系统">插件系统</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=扩展定制">扩展定制</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=工具类开发">工具类开发</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=组件开发">组件开发</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=主题扩展">主题扩展</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=工程化实践">工程化实践</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/12 08:32</div> <div class="item"><i class="eye icon"></i> 48</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17882921#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17875140"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17875140" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第四章:高级特性与最佳实践 - 第一节 - Tailwind CSS 自定义配置深度解析 </a> <div class="description"> <p class="line-clamp">Tailwind CSS 的一大特色是其高度可定制性。通过配置文件,我们可以完全控制框架的行为,创建符合项目需求的样式系统。本节将深入探讨 Tailwind CSS 的配置系统,帮助你掌握自定义配置的各个...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=高度可定制性">高度可定制性</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=配置文件">配置文件</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=样式系统">样式系统</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=配置系统">配置系统</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=自定义配置">自定义配置</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=主题定制">主题定制</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/11 08:27</div> <div class="item"><i class="eye icon"></i> 29</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17875140#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17875133"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17875133" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第三章:组件开发实战 - 第五节 - Tailwind CSS 响应式导航栏实现 </a> <div class="description"> <p class="line-clamp">导航栏是几乎所有网站都必备的组件,一个好的响应式导航栏需要在不同设备上都能提供出色的用户体验。本节将介绍如何使用 Tailwind CSS 实现功能完善的响应式导航栏。 基础导航栏结构 桌面端导...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式导航栏">响应式导航栏</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=用户体验">用户体验</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=菜单切换">菜单切换</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=下拉菜单">下拉菜单</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=性能优化">性能优化</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/11 08:26</div> <div class="item"><i class="eye icon"></i> 36</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17875133#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17867376"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17867376" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第三章:组件开发实战 - 第四节 - Tailwind CSS 深色模式适配 </a> <div class="description"> <p class="line-clamp">深色模式(Dark Mode)已经成为现代 Web 应用的标配功能。Tailwind CSS 提供了强大的深色模式支持,让我们能够轻松实现优雅的明暗主题切换。本节将详细介绍如何在项目中实现完善的深色模式适...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=深色模式">深色模式</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=明暗主题">明暗主题</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=dark类名">dark类名</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=系统设置">系统设置</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=颜色系统">颜色系统</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/10 08:45</div> <div class="item"><i class="eye icon"></i> 44</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17867376#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17867374"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17867374" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第三章:组件开发实战 - 第三节 - Tailwind CSS 动画和过渡效果 </a> <div class="description"> <p class="line-clamp">在现代 Web 应用中,合理使用动画和过渡效果可以大大提升用户体验。Tailwind CSS 提供了丰富的动画和过渡工具类,让我们能够轻松实现各种交互效果。本节将详细介绍如何在项目中运用这些特性。...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=动画">动画</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=过渡效果">过渡效果</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=用户体验">用户体验</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=性能优化">性能优化</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=可访问性">可访问性</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/10 08:44</div> <div class="item"><i class="eye icon"></i> 18</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17867374#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17842627"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17842627" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> DataCap MongoDB Driver: 全面解析MongoDB在DataCap中的使用指南 </a> <div class="description"> <p class="line-clamp">在大数据时代,MongoDB作为一款广受欢迎的NoSQL数据库,其灵活的文档存储模型和强大的查询能力使其成为许多现代应用的首选数据存储方案。今天,我们将深入探讨DataCap MongoDB Driver,这是一...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=MongoDB">MongoDB</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=NoSQL数据库">NoSQL数据库</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=DataCapMongoDBDriver">DataCapMongoDBDriver</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=SQL语法">SQL语法</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=JDBC连接">JDBC连接</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=查询功能">查询功能</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=12779031" class="catalog-name-link">DataCap</a></div> <div class="item">03/07 08:39</div> <div class="item"><i class="eye icon"></i> 24</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17842627#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17842602"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17842602" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第三章:组件开发实战 - 第二节 - Tailwind CSS 表单元素样式处理 </a> <div class="description"> <p class="line-clamp">在前端开发中,表单元素的样式处理一直是一个重要且复杂的话题。不同浏览器对表单元素有着不同的默认样式,而且某些表单元素的样式难以直接通过 CSS 进行修改。本节将介绍如何使用 Tailwind...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=表单元素">表单元素</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=样式处理">样式处理</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=浏览器兼容性">浏览器兼容性</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=自定义复选框">自定义复选框</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=单选按钮组">单选按钮组</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/07 08:35</div> <div class="item"><i class="eye icon"></i> 58</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17842602#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17834609"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17834609" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第三章:组件开发实战 - 第一节 - Tailwind CSS 常用UI组件构建 </a> <div class="description"> <p class="line-clamp">基础按钮组件 1. 按钮样式变体 ...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=按钮样式">按钮样式</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=图标按钮">图标按钮</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=输入框">输入框</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=下拉选择">下拉选择</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=组件封装">组件封装</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式设计">响应式设计</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/06 08:36</div> <div class="item"><i class="eye icon"></i> 36</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17834609#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17826921"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17826921" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第二章:基础概念精讲 - 第五节 - Tailwind CSS Flex 和 Grid 布局实战 </a> <div class="description"> <p class="line-clamp">Flex 布局基础 1. Flex 容器设置 Item 1 Item 2 Item 3 行布...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=Flex布局">Flex布局</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=Flex容器">Flex容器</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=主轴对齐">主轴对齐</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=交叉轴对齐">交叉轴对齐</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=Grid布局">Grid布局</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=Grid容器">Grid容器</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=网格列配置">网格列配置</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/05 08:26</div> <div class="item"><i class="eye icon"></i> 44</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17826921#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17819155"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17819155" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第二章:基础概念精讲 - 第四节 - Tailwind CSS 排版和文本样式 </a> <div class="description"> <p class="line-clamp">字体系统 1. 字体系列 // tailwind.config.js 默认字体配置 module.exports = { theme: { fontFamily: { 'sans': ['ui-sans-serif', 'system-ui', '-apple-system', 'BlinkMacSystemFon......</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=字体控制">字体控制</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=文本样式">文本样式</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式设计">响应式设计</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=排版规范">排版规范</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=可读性">可读性</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/04 08:39</div> <div class="item"><i class="eye icon"></i> 17</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17819155#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17819145"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17819145" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第二章:基础概念精讲 - 第三节 - Tailwind CSS 间距和布局控制 </a> <div class="description"> <p class="line-clamp">间距系统基础 1. 间距刻度 Tailwind CSS 提供了一个基于 0.25rem(4px)递增的间距系统: // tailwind.config.js 默认间距配置 module.exports = { theme: { spacing: { '0': '0', ......</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=间距系统">间距系统</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=间距刻度">间距刻度</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=布局控制">布局控制</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=弹性盒布局">弹性盒布局</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=网格布局">网格布局</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式间距">响应式间距</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">03/04 08:37</div> <div class="item"><i class="eye icon"></i> 47</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17819145#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17778007"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17778007" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第二章:基础概念精讲 - 第二节 - Tailwind CSS 颜色系统和主题定制 </a> <div class="description"> <p class="line-clamp">颜色系统基础 1. 默认调色板 Tailwind CSS 提供了一套精心设计的默认颜色系统: // tailwind.config.js 默认颜色示例 module.exports = { theme: { colors: { // 灰度 gray......</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=颜色系统">颜色系统</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=默认调色板">默认调色板</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=颜色命名">颜色命名</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=主题定制">主题定制</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=深色模式">深色模式</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/27 08:31</div> <div class="item"><i class="eye icon"></i> 68</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17778007#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17778004"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17778004" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第二章:基础概念精讲 - 第一节 - Tailwind CSS 响应式设计系统 </a> <div class="description"> <p class="line-clamp">响应式设计基础 1. 断点系统 Tailwind CSS 默认提供五个断点: // tailwind.config.js 默认断点配置 module.exports = { theme: { screens: { 'sm': '640px', // 小屏幕,如手机横屏 ......</p> </div> <div class="extra"> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/27 08:30</div> <div class="item"><i class="eye icon"></i> 76</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17778004#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17765498"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17765498" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第一章:认识Tailwind CSS - 第四节 - Tailwind CSS 与其他 CSS 方案的对比 </a> <div class="description"> <p class="line-clamp">主流 CSS 方案概览 1. 传统 CSS /* 传统 CSS / .button { background-color: #3490dc; padding: 0.5rem 1rem; border-radius: 0.25rem; color: white; } 2. CSS Modules / Button.module.cs...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=CSS方案">CSS方案</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=开发效率">开发效率</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=性能对比">性能对比</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=开发体验">开发体验</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=维护性">维护性</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=团队协作">团队协作</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/25 12:53</div> <div class="item"><i class="eye icon"></i> 56</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17765498#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17765474"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17765474" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第一章:认识Tailwind CSS - 第三节 - Tailwind CSS 开发环境搭建和工具链配置 </a> <div class="description"> <p class="line-clamp">必备环境准备 Node.js (v14.0.0 或更高版本) npm 或 yarn 包管理器 代码编辑器(推荐 VS Code) 2. 项目初始化方式 方式一:在新项目中使用 # 创建项目目录 mkdir my-tailwind-project cd m...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=项目初始化">项目初始化</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=配置文件">配置文件</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=框架集成">框架集成</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=IDE配置">IDE配置</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=开发工具链">开发工具链</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=性能优化">性能优化</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/25 12:49</div> <div class="item"><i class="eye icon"></i> 82</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17765474#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17752286"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17752286" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第一章:认识Tailwind CSS - 第二节 - Utility First CSS 的优势与挑战 </a> <div class="description"> <p class="line-clamp">什么是 Utility First CSS? Utility First CSS 是一种使用原子类(atomic classes)来构建用户界面的方法。不同于传统的语义化 CSS 类名,它使用大量的功能性类名来直接描述样式。例如: <!...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=UtilityFirstCSS">UtilityFirstCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=原子类">原子类</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=功能性类名">功能性类名</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=开发效率">开发效率</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=可维护性">可维护性</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=视觉一致性">视觉一致性</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式设计">响应式设计</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/24 09:08</div> <div class="item"><i class="eye icon"></i> 58</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17752286#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="17752271"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/17752271" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> 第一章:认识Tailwind CSS - 第一节 - Tailwind CSS 的核心理念 </a> <div class="description"> <p class="line-clamp">实用优先(Utility-First) Tailwind CSS 的最核心理念是"实用优先"。这种方法颠覆了传统的 CSS 开发方式,不再编写自定义的类名和样式规则,而是通过组合预定义的工具类来构建界面。这种方式...</p> </div> <div class="extra"> <div class="ui horizontal list"> <div class="item"> <a class="ui horizontal label" href="https://my.oschina.net/devlive?q=实用优先">实用优先</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=TailwindCSS">TailwindCSS</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=预定义工具类">预定义工具类</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=响应式设计">响应式设计</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=组件提取">组件提取</a><a class="ui horizontal label" href="https://my.oschina.net/devlive?q=主题定制">主题定制</a> </div> </div> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=16276601" class="catalog-name-link">Tailwind CSS:现代化开发实战指南</a></div> <div class="item">02/24 09:08</div> <div class="item"><i class="eye icon"></i> 76</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/17752271#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> <div class="item blog-item" data-id="11223239"> <div class="content"> <a class="header" href="https://my.oschina.net/devlive/blog/11223239" target="_blank"> <div class="ui teal label horizontal" data-tooltip="原创">原</div> DataCap 自定义 File 转换器 </a> <div class="description"> <p class="line-clamp">DataCap 支持自定义 File 转换器,使用者可以编写自己的文件转换器集成到 DataCap 中。该文档主要讲解如何快速集成一个文件转换器到 DataCap 系统中。 该模块我们主要使用到的是 file 模块内...</p> </div> <div class="extra"> <div class="ui horizontal small list"> <div class="item"><a href="https://my.oschina.net/devlive?tab=newest&catalogId=12779031" class="catalog-name-link">DataCap</a></div> <div class="item">2024/06/27 10:43</div> <div class="item"><i class="eye icon"></i> 74</div> <div class="item"><a href="https://my.oschina.net/devlive/blog/11223239#comments" target="_blank"><i class="comment outline icon"></i> 0</a></div> </div> </div> </div> </div> </div> <div class="page-load-status"> <p class="infinite-scroll-request"> <i class="ui active small inline loader"></i> </p> <p class="infinite-scroll-last">没有更多内容</p> <p class="infinite-scroll-error">加载失败,请刷新页面</p> </div> <a class="ui fluid button load-more-button" style="display: none">加载更多</a> <p class="pagination"> <a class="pagination__next" style="display: none" href="https://my.oschina.net/devlive/widgets/_space_index_newest_blog?catalogId=0&q=&p=2&sortType=time&type=ajax">下一页</a> </p> </div> </div> </div> </div> </div> <div class="ui mini delete-blog modal"> <div class="header">删除文章</div> <div class="content"> <p>文章删除后无法恢复,确定删除此文章吗?</p> </div> <div class="actions"> <div class="ui cancel button">取消</div> <div class="ui red ok button">确定</div> </div> </div> <div class="ui mini delete-tweet modal"> <div class="header">删除动弹</div> <div class="content"> <p>动弹删除后,数据将无法恢复</p> </div> <div class="actions"> <div class="ui cancel button">取消</div> <div class="ui red ok button">确定</div> </div> </div> <div class="ui mini delete-tweet-comment modal"> <div class="header">删除一条评论</div> <div class="content"> <p>评论删除后,数据将无法恢复</p> </div> <div class="actions"> <div class="ui cancel button">取消</div> <div class="ui red ok button">确定</div> </div> </div> <script type="text/javascript" src="/action/view/space?id=6981961"></script> </div> </div> <div id="footer" class="ui vertical footer segment mb-hide"> <div class="ui container"> <div class="ui grid"> <div class="eight wide mobile three wide tablet two wide computer column"> <h4 class="ui header">OSCHINA 社区</h4> <div class="ui link list"> <a class="item" href="https://www.oschina.net/home/aboutosc" target="_blank">关于我们</a> <a class="item" href="https://www.oschina.net/help-center" target="_blank">帮助中心</a> <a class="item" href="https://www.oschina.net/home/aboutosc#partners" target="_blank">合作伙伴</a> <a class="item" href="https://www.oschina.net/openapi" target="_blank">Open API</a> </div> </div> <div class="eight wide mobile four wide tablet three wide computer column"> <h4 class="ui header">在线工具</h4> <div class="ui link list"> <a class="item" href="https://gitee.com/?utm_source=oschina&utm_medium=link-bottom&utm_campaign=home" target="_blank">Gitee.com</a> <a class="item" href="https://gitee.com/enterprises?utm_source=oschina&utm_medium=link-bottom&utm_campaign=enterprises" target="_blank">企业研发管理</a> <a class="item" href="https://copycat.gitee.com/?utm_source=oschina&utm_medium=link-bottom&utm_campaign=copycat" target="_blank">CopyCat-代码克隆检测</a> <a class="item" href="https://tool.oschina.net" target="_blank">实用在线工具</a> </div> </div> <div class="eight wide mobile three wide tablet two wide computer column"> <h4 class="ui header">攻略</h4> <div class="ui link list"> <a class="item" href="https://www.oschina.net/question/2918182_2319406" target="_blank">项目运营</a> <a class="item" href="https://my.oschina.net/u/4252687/blog/5568509" target="_blank">Awesome 软件(持续更新中)</a> </div> </div> <!-- <div class="center aligned eight wide mobile two wide tablet two wide computer column">--> <!-- <h4 class="ui header">QQ群</h4>--> <!-- <a href="https://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=Ls5H34lyhyx3ZJevQxyowwZ7YgLWns8c&authKey=IfzYqURucBExIkBqE7xUu1Tz9Dh8O0XC%2BOVpjBhZzzbD8u5zsMgAZHJKOJpSa6yh&noverify=0&group_code=229767317" target="_blank">--> <!-- <img class="qrcode" src="https://oscimg.oschina.net/oscnet/up-36e8546f6995ae8f61d6b8abe7310af0133.jpg" alt="QQ交流群"/>--> <!-- </a>--> <!-- <div class="ui link list">--> <!-- <a class="item qrcode-des" href="http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=Ls5H34lyhyx3ZJevQxyowwZ7YgLWns8c&authKey=IfzYqURucBExIkBqE7xUu1Tz9Dh8O0XC%2BOVpjBhZzzbD8u5zsMgAZHJKOJpSa6yh&noverify=0&group_code=229767317" target="_blank">229767317</a>--> <!-- </div>--> <!-- </div>--> <div class="center aligned eight wide mobile two wide tablet two wide computer column"> <h4 class="ui header">公众号</h4> <img src="https://static.oschina.net/new-osc/img/wechat_qrcode.jpg?t=1484694603000" alt="微信公众号"/> </div> <div class="center aligned eight wide mobile two wide tablet two wide computer column"> <h4 class="ui header">视频号</h4> <img src="https://oscimg.oschina.net/oscnet/up-7f546da372c31b5421fedc29f7c202ab2c4.JPEG" alt="视频号" style="width: 65px"/> </div> <div class="center aligned eight wide mobile two wide tablet two wide computer column"> <h4 class="ui header">问题反馈</h4> <img src="https://oscimg.oschina.net/oscnet/up-51726e7d90e535ade6324bfc84e76736fa8.png" alt="问题反馈" style="width: 67px"/> </div> </div> </div> </div> <div id="copyright"> <div class="ui container"> <div class="ui clearing basic segment"> <div class="ui left floated horizontal link list"> <div class="item">©OSCHINA(OSChina.NET)</div> <div class="item mb-hide">工信部</div> <a class="item mb-hide" href="http://www.copu.org.cn/" target="_blank" title="开源软件推进联盟">开源软件推进联盟</a> <div class="item mb-hide">指定官方社区</div> <a class="item mb-hide" href="https://www.oschina.net/question/1_2326668" target="_blank" title="OSCHINA 社区规范">社区规范</a> </div> <div class="ui right floated horizontal link list"> <div class="item mb-hide">深圳市奥思网络科技有限公司版权所有</div> <a href="http://beian.miit.gov.cn/" target="_blank" class="item">粤ICP备12009483号</a> </div> </div> </div> </div> </div> <style>.codeBlock:hover .oscCode{display: block !important;} .codeBlock{z-index: 2;position: fixed;right: 20px;bottom: 57px; overflow: hidden; margin-bottom: 4px;padding: 8px 0 6px;width: 40px;height: auto;box-sizing: content-box;cursor: pointer;border: 1px solid #ddd;background: #f5f5f5;text-align: center;transition: background 0.4s ease;} @media only screen and (max-width: 767px){ .codeBlock{display: none;}} /* html{ -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); _filter:none; } */ </style> <div class="codeBlock"> <img class="codeIcon" src="https://oscimg.oschina.net/oscnet/up-02f2706a81344119fb5cdcdda304068f2e0.png" alt=""> <img class="oscCode" style="display:none;position: fixed;bottom: 62px;right: 69px;width: 120px;" src="https://oscimg.oschina.net/oscnet/up-e77d060131d9b392981650ec7beb614554f.JPEG" alt=""> </div> <script> if(window.location.href.indexOf("www.oschina.net/group")!=-1 && window.location.href.indexOf("/admin/")!=-1){ document.querySelector("#mainScreen > div > div.group-admin-container > div.admin-body-box.box-card > div > div.menu-box > div > div:nth-child(4)").remove() } </script> <div class="back-to-top back-to-top-toggle"> <div class="icon"><img src="https://static.oschina.net/new-osc/img/icon/back-to-top.svg" alt="返回顶部"></div> <div class="text">顶部</div> </div> <script src="https://static.oschina.net/new-osc/js/utils/semantic-ui/semantic.min.js?t=1670405958000"></script> <script src="https://static.oschina.net/new-osc/js/utils/vue.min.js?t=1670405958000"></script> <script src="https://static.oschina.net/new-osc/js/utils/jweixin-1.6.0.js"></script> <script type="text/javascript" src="https://static.oschina.net/new-osc/dist/js/space.5d82f4ce.js"></script> <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https'){ bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else{ bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> <script> var _hmt = _hmt || []; _hmt.push(['_requirePlugin', 'UrlChangeTracker', { shouldTrackUrlChange: function (newPath, oldPath) { return newPath && oldPath; }} ]); (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?a411c4d1664dd70048ee98afe7b28f0b"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <!-- Global site tag (gtag.js) - Google Analytics --> <!-- <script async src="https://www.googletagmanager.com/gtag/js?id=G-TK89C9ZD80"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-TK89C9ZD80'); </script> --> <script> window.goatcounter = { path: function(p) { return location.host + p } } </script> <script data-goatcounter="https://visit.oschina.net/count" async src="//visit.oschina.net/count.js"></script> <script async> (function(){ var el = document.createElement("script"); el.src = "https://lf1-cdn-tos.bytegoofy.com/goofy/ttzz/push.js?2f2c965c87382dadf25633a3738875e5ccd132720338e03bf7e464e2ec709b9dfd9a9dcb5ced4d7780eb6f3bbd089073c2a6d54440560d63862bbf4ec01bba3a"; el.id = "ttzz"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(el, s); })(window) </script> </body> </html> <!-- Generated by oschina (init:0[ms],page:574[ms],ip:8.222.208.146) //--> <img data-src='baidu-visit' style='display:none' src='http://hm.baidu.com/hm.gif?si=a411c4d1664dd70048ee98afe7b28f0b&et=0&nv=1&st=1&v=wap-2-0.3&rnd=567316341'></img>