add _extensions
This commit is contained in:
Executable
BIN
Binary file not shown.
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
+280
@@ -0,0 +1,280 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" page-range-format="expanded" default-locale="en-US">
|
||||
<info>
|
||||
<title>American Chemical Society</title>
|
||||
<title-short>ACS</title-short>
|
||||
<id>http://www.zotero.org/styles/american-chemical-society</id>
|
||||
<link href="http://www.zotero.org/styles/american-chemical-society" rel="self"/>
|
||||
<link href="https://pubs.acs.org/doi/full/10.1021/acsguide.40303" rel="documentation"/>
|
||||
<link href="https://pubs.acs.org/doi/book/10.1021/acsguide" rel="documentation"/>
|
||||
<author>
|
||||
<name>Julian Onions</name>
|
||||
<email>julian.onions@gmail.com</email>
|
||||
</author>
|
||||
<contributor>
|
||||
<name>Ivan Bushmarinov</name>
|
||||
<email>ib@ineos.ac.ru</email>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Sebastian Karcher</name>
|
||||
</contributor>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="chemistry"/>
|
||||
<summary>The American Chemical Society style</summary>
|
||||
<updated>2021-06-04T03:27:50+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<locale xml:lang="en">
|
||||
<terms>
|
||||
<term name="editortranslator" form="short">
|
||||
<single>ed. and translator</single>
|
||||
<multiple>eds. and translators</multiple>
|
||||
</term>
|
||||
<term name="translator" form="short">
|
||||
<single>translator</single>
|
||||
<multiple>translators</multiple>
|
||||
</term>
|
||||
<term name="collection-editor" form="short">
|
||||
<single>series ed.</single>
|
||||
<multiple>series eds.</multiple>
|
||||
</term>
|
||||
</terms>
|
||||
</locale>
|
||||
<macro name="editor">
|
||||
<group delimiter="; ">
|
||||
<names variable="editor translator" delimiter="; ">
|
||||
<name sort-separator=", " initialize-with=". " name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" prefix=", " text-case="title"/>
|
||||
</names>
|
||||
<names variable="collection-editor">
|
||||
<name sort-separator=", " initialize-with=". " name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" prefix=", " text-case="title"/>
|
||||
</names>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="author">
|
||||
<names variable="author" suffix=".">
|
||||
<name sort-separator=", " initialize-with=". " name-as-sort-order="all" delimiter="; " delimiter-precedes-last="always"/>
|
||||
<label form="short" prefix=", " text-case="capitalize-first"/>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="publisher">
|
||||
<choose>
|
||||
<if type="thesis" match="any">
|
||||
<group delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<group delimiter=": ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<text variable="title" text-case="title" font-style="italic"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title" text-case="title"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="volume">
|
||||
<group delimiter=" ">
|
||||
<text term="volume" form="short" text-case="capitalize-first"/>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="series">
|
||||
<text variable="collection-title"/>
|
||||
</macro>
|
||||
<macro name="pages">
|
||||
<label variable="page" form="short" suffix=" " strip-periods="true"/>
|
||||
<text variable="page"/>
|
||||
</macro>
|
||||
<macro name="book-container">
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<choose>
|
||||
<if type="entry-dictionary entry-encyclopedia" match="none">
|
||||
<group delimiter=" ">
|
||||
<text term="in" text-case="capitalize-first"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</else>
|
||||
</choose>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="issued">
|
||||
<date variable="issued" delimiter=" ">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</macro>
|
||||
<macro name="full-issued">
|
||||
<date variable="issued" delimiter=" ">
|
||||
<date-part name="month" form="long" suffix=" "/>
|
||||
<date-part name="day" suffix=", "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition" suffix="."/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout delimiter="," vertical-align="sup">
|
||||
<text variable="citation-number"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography second-field-align="flush" entry-spacing="0">
|
||||
<layout suffix=".">
|
||||
<text variable="citation-number" prefix="(" suffix=") "/>
|
||||
<text macro="author" suffix=" "/>
|
||||
<choose>
|
||||
<if type="article-journal review" match="any">
|
||||
<group delimiter=" ">
|
||||
<text macro="title" suffix="."/>
|
||||
<text variable="container-title" font-style="italic" form="short"/>
|
||||
<group delimiter=", ">
|
||||
<text macro="issued" font-weight="bold"/>
|
||||
<choose>
|
||||
<if variable="volume">
|
||||
<group delimiter=" ">
|
||||
<text variable="volume" font-style="italic"/>
|
||||
<text variable="issue" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<group delimiter=" ">
|
||||
<text term="issue" form="short" text-case="capitalize-first"/>
|
||||
<text variable="issue"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="article-magazine article-newspaper article" match="any">
|
||||
<group delimiter=" ">
|
||||
<text macro="title" suffix="."/>
|
||||
<text variable="container-title" font-style="italic" suffix="."/>
|
||||
<text macro="edition"/>
|
||||
<text macro="publisher"/>
|
||||
<group delimiter=", ">
|
||||
<text macro="full-issued"/>
|
||||
<text macro="pages"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="thesis">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<text variable="genre"/>
|
||||
</group>
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="volume"/>
|
||||
<text macro="pages"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group delimiter="; ">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
<text macro="editor" prefix=" "/>
|
||||
<text macro="series"/>
|
||||
<choose>
|
||||
<if type="report">
|
||||
<group delimiter=" ">
|
||||
<text variable="genre"/>
|
||||
<text variable="number"/>
|
||||
</group>
|
||||
</if>
|
||||
</choose>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
<group delimiter=", ">
|
||||
<text macro="volume"/>
|
||||
<text macro="pages"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="patent">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<text variable="number"/>
|
||||
</group>
|
||||
<date variable="issued" form="text"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="chapter paper-conference entry-dictionary entry-encyclopedia" match="any">
|
||||
<group delimiter="; ">
|
||||
<text macro="book-container"/>
|
||||
<text macro="editor"/>
|
||||
<text macro="series"/>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
<group delimiter=", ">
|
||||
<text macro="volume"/>
|
||||
<text macro="pages"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="webpage">
|
||||
<group delimiter=" ">
|
||||
<text variable="title"/>
|
||||
<text variable="URL"/>
|
||||
<date variable="accessed" prefix="(accessed " suffix=")" delimiter=" ">
|
||||
<date-part name="year"/>
|
||||
<date-part name="month" prefix="-" form="numeric-leading-zeros"/>
|
||||
<date-part name="day" prefix="-" form="numeric-leading-zeros"/>
|
||||
</date>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group delimiter=", ">
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</group>
|
||||
<group delimiter=", ">
|
||||
<text macro="issued"/>
|
||||
<text variable="volume" font-style="italic"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
<text variable="DOI" prefix=". https://doi.org/"/>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
+435
@@ -0,0 +1,435 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" class="in-text" names-delimiter=". " name-as-sort-order="all" sort-separator=" " demote-non-dropping-particle="never" initialize-with=" " initialize-with-hyphen="false" page-range-format="expanded" default-locale="zh-CN">
|
||||
<info>
|
||||
<title>China National Standard GB/T 7714-2015 (numeric, 中文)</title>
|
||||
<id>http://www.zotero.org/styles/china-national-standard-gb-t-7714-2015-numeric</id>
|
||||
<link href="http://www.zotero.org/styles/china-national-standard-gb-t-7714-2015-numeric" rel="self"/>
|
||||
<link href="http://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D8055ED3A7E05397BE0A0AB82A" rel="documentation"/>
|
||||
<author>
|
||||
<name>牛耕田</name>
|
||||
<email>buffalo_d@163.com</email>
|
||||
</author>
|
||||
<contributor>
|
||||
<name>Zeping Lee</name>
|
||||
<email>zepinglee@gmail.com</email>
|
||||
</contributor>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="generic-base"/>
|
||||
<summary>The Chinese GB/T 7714-2015 numeric style</summary>
|
||||
<updated>2022-02-23T10:44:01+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<locale xml:lang="zh-CN">
|
||||
<date form="text">
|
||||
<date-part name="year" suffix="年" range-delimiter="—"/>
|
||||
<date-part name="month" form="numeric" suffix="月" range-delimiter="—"/>
|
||||
<date-part name="day" suffix="日" range-delimiter="—"/>
|
||||
</date>
|
||||
<terms>
|
||||
<term name="edition" form="short">版</term>
|
||||
<term name="open-quote">“</term>
|
||||
<term name="close-quote">”</term>
|
||||
<term name="open-inner-quote">‘</term>
|
||||
<term name="close-inner-quote">’</term>
|
||||
</terms>
|
||||
</locale>
|
||||
<locale>
|
||||
<date form="numeric">
|
||||
<date-part name="year" range-delimiter="/"/>
|
||||
<date-part name="month" form="numeric-leading-zeros" prefix="-" range-delimiter="/"/>
|
||||
<date-part name="day" form="numeric-leading-zeros" prefix="-" range-delimiter="/"/>
|
||||
</date>
|
||||
<terms>
|
||||
<term name="page-range-delimiter">-</term>
|
||||
</terms>
|
||||
</locale>
|
||||
<!-- 引用日期 -->
|
||||
<macro name="accessed-date">
|
||||
<date variable="accessed" form="numeric" prefix="[" suffix="]"/>
|
||||
</macro>
|
||||
<!-- 主要责任者 -->
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name>
|
||||
<name-part name="family" text-case="uppercase"/>
|
||||
<name-part name="given"/>
|
||||
</name>
|
||||
<substitute>
|
||||
<names variable="composer"/>
|
||||
<names variable="illustrator"/>
|
||||
<names variable="director"/>
|
||||
<choose>
|
||||
<if variable="container-title" match="none">
|
||||
<names variable="editor"/>
|
||||
</if>
|
||||
</choose>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<!-- 书籍的卷号(“第 x 卷”或“第 x 册”) -->
|
||||
<macro name="book-volume">
|
||||
<choose>
|
||||
<if type="article article-journal article-magazine article-newspaper periodical" match="none">
|
||||
<choose>
|
||||
<if is-numeric="volume">
|
||||
<group delimiter=" ">
|
||||
<label variable="volume" form="short" text-case="capitalize-first"/>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="volume"/>
|
||||
</else>
|
||||
</choose>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<!-- 专著主要责任者 -->
|
||||
<macro name="container-author">
|
||||
<names variable="editor">
|
||||
<name>
|
||||
<name-part name="family" text-case="uppercase"/>
|
||||
<name-part name="given"/>
|
||||
</name>
|
||||
<substitute>
|
||||
<names variable="editorial-director"/>
|
||||
<names variable="collection-editor"/>
|
||||
<names variable="container-author"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<!-- 专著题名 -->
|
||||
<macro name="container-title">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=": ">
|
||||
<choose>
|
||||
<if variable="container-title">
|
||||
<text variable="container-title"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="event"/>
|
||||
</else>
|
||||
</choose>
|
||||
<text macro="book-volume"/>
|
||||
</group>
|
||||
<choose>
|
||||
<if variable="event-date">
|
||||
<date variable="event-date" form="text"/>
|
||||
<text variable="event-place"/>
|
||||
</if>
|
||||
</choose>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 版本项 -->
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<!-- 电子资源的更新或修改日期 -->
|
||||
<macro name="issued-date">
|
||||
<date variable="issued" form="numeric"/>
|
||||
</macro>
|
||||
<!-- 出版年 -->
|
||||
<macro name="issued-year">
|
||||
<choose>
|
||||
<if is-uncertain-date="issued">
|
||||
<date variable="issued" prefix="[" suffix="]">
|
||||
<date-part name="year" range-delimiter="-"/>
|
||||
</date>
|
||||
</if>
|
||||
<else>
|
||||
<date variable="issued">
|
||||
<date-part name="year" range-delimiter="-"/>
|
||||
</date>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<!-- 专著的出版项 -->
|
||||
<macro name="publishing">
|
||||
<group delimiter=": ">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=": ">
|
||||
<text variable="publisher-place"/>
|
||||
<text variable="publisher"/>
|
||||
</group>
|
||||
<!-- 非电子资源显示“出版年” -->
|
||||
<choose>
|
||||
<if variable="publisher page" type="book chapter paper-conference thesis" match="any">
|
||||
<text macro="issued-year"/>
|
||||
</if>
|
||||
<else-if variable="URL DOI" match="none">
|
||||
<text macro="issued-year"/>
|
||||
</else-if>
|
||||
</choose>
|
||||
</group>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
<choose>
|
||||
<!-- 纯电子资源显示“更新或修改日期” -->
|
||||
<if variable="publisher page" type="book chapter paper-conference thesis" match="none">
|
||||
<choose>
|
||||
<if variable="URL DOI" match="any">
|
||||
<text macro="issued-date" prefix="(" suffix=")"/>
|
||||
</if>
|
||||
</choose>
|
||||
</if>
|
||||
</choose>
|
||||
<text macro="accessed-date"/>
|
||||
</macro>
|
||||
<!-- 其他责任者 -->
|
||||
<macro name="secondary-contributor">
|
||||
<names variable="translator">
|
||||
<name>
|
||||
<name-part name="family" text-case="uppercase"/>
|
||||
<name-part name="given"/>
|
||||
</name>
|
||||
<label form="short" prefix=", "/>
|
||||
</names>
|
||||
</macro>
|
||||
<!-- 连续出版物中的析出文献的出处项(年、卷、期等信息) -->
|
||||
<macro name="periodical-publishing">
|
||||
<group>
|
||||
<group delimiter=": ">
|
||||
<group>
|
||||
<group delimiter=", ">
|
||||
<text macro="container-title" text-case="title"/>
|
||||
<choose>
|
||||
<if type="article-newspaper">
|
||||
<text macro="issued-date"/>
|
||||
</if>
|
||||
<else>
|
||||
<text macro="issued-year"/>
|
||||
</else>
|
||||
</choose>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
<text variable="issue" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
<text macro="accessed-date"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 题名 -->
|
||||
<macro name="title">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=": ">
|
||||
<text variable="title"/>
|
||||
<group delimiter=" ">
|
||||
<choose>
|
||||
<if variable="container-title" type="paper-conference" match="none">
|
||||
<text macro="book-volume"/>
|
||||
</if>
|
||||
</choose>
|
||||
<choose>
|
||||
<if type="bill legal_case legislation patent regulation report standard" match="any">
|
||||
<text variable="number"/>
|
||||
</if>
|
||||
</choose>
|
||||
</group>
|
||||
</group>
|
||||
<choose>
|
||||
<if variable="container-title" type="paper-conference" match="none">
|
||||
<choose>
|
||||
<if variable="event-date">
|
||||
<text variable="event-place"/>
|
||||
<date variable="event-date" form="text"/>
|
||||
</if>
|
||||
</choose>
|
||||
</if>
|
||||
</choose>
|
||||
</group>
|
||||
<text macro="type-code" prefix="[" suffix="]"/>
|
||||
</macro>
|
||||
<!-- 文献类型标识 -->
|
||||
<macro name="type-code">
|
||||
<group delimiter="/">
|
||||
<choose>
|
||||
<if type="article">
|
||||
<choose>
|
||||
<if variable="archive">
|
||||
<text value="A"/>
|
||||
</if>
|
||||
<else>
|
||||
<text value="M"/>
|
||||
</else>
|
||||
</choose>
|
||||
</if>
|
||||
<else-if type="article-journal article-magazine periodical" match="any">
|
||||
<text value="J"/>
|
||||
</else-if>
|
||||
<else-if type="article-newspaper">
|
||||
<text value="N"/>
|
||||
</else-if>
|
||||
<else-if type="bill collection legal_case legislation regulation" match="any">
|
||||
<text value="A"/>
|
||||
</else-if>
|
||||
<else-if type="book chapter" match="any">
|
||||
<text value="M"/>
|
||||
</else-if>
|
||||
<else-if type="dataset">
|
||||
<text value="DS"/>
|
||||
</else-if>
|
||||
<else-if type="map">
|
||||
<text value="CM"/>
|
||||
</else-if>
|
||||
<else-if type="paper-conference">
|
||||
<text value="C"/>
|
||||
</else-if>
|
||||
<else-if type="patent">
|
||||
<text value="P"/>
|
||||
</else-if>
|
||||
<else-if type="post post-weblog webpage" match="any">
|
||||
<text value="EB"/>
|
||||
</else-if>
|
||||
<else-if type="report">
|
||||
<text value="R"/>
|
||||
</else-if>
|
||||
<else-if type="software">
|
||||
<text value="CP"/>
|
||||
</else-if>
|
||||
<else-if type="standard">
|
||||
<text value="S"/>
|
||||
</else-if>
|
||||
<else-if type="thesis">
|
||||
<text value="D"/>
|
||||
</else-if>
|
||||
<else>
|
||||
<text value="Z"/>
|
||||
</else>
|
||||
</choose>
|
||||
<choose>
|
||||
<if variable="URL DOI" match="any">
|
||||
<text value="OL"/>
|
||||
</if>
|
||||
</choose>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 获取和访问路径以及 DOI -->
|
||||
<macro name="url-doi">
|
||||
<group delimiter=". ">
|
||||
<text variable="URL"/>
|
||||
<text variable="DOI" prefix="DOI:"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 连续出版物的年卷期 -->
|
||||
<macro name="year-volume-issue">
|
||||
<group>
|
||||
<group delimiter=", ">
|
||||
<text macro="issued-year"/>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
<text variable="issue" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 专著和电子资源 -->
|
||||
<macro name="monograph-layout">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="author"/>
|
||||
<text macro="title"/>
|
||||
<text macro="secondary-contributor"/>
|
||||
<text macro="edition"/>
|
||||
<text macro="publishing"/>
|
||||
<text macro="url-doi"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 专著中的析出文献 -->
|
||||
<macro name="chapter-in-book-layout">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="author"/>
|
||||
<group delimiter="//">
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<text macro="secondary-contributor"/>
|
||||
</group>
|
||||
<group delimiter=". ">
|
||||
<text macro="container-author"/>
|
||||
<text macro="container-title"/>
|
||||
</group>
|
||||
</group>
|
||||
<text macro="edition"/>
|
||||
<text macro="publishing"/>
|
||||
<text macro="url-doi"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 连续出版物 -->
|
||||
<macro name="serial-layout">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="author"/>
|
||||
<text macro="title"/>
|
||||
<text macro="year-volume-issue"/>
|
||||
<text macro="publishing"/>
|
||||
<text variable="URL"/>
|
||||
<text variable="DOI" prefix="DOI:"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 连续出版物中的析出文献 -->
|
||||
<macro name="article-in-periodical-layout">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="author"/>
|
||||
<text macro="title"/>
|
||||
<text macro="periodical-publishing"/>
|
||||
<text macro="url-doi"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 专利文献 -->
|
||||
<macro name="patent-layout">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="author"/>
|
||||
<text macro="title"/>
|
||||
<group>
|
||||
<text macro="issued-date"/>
|
||||
<text macro="accessed-date"/>
|
||||
</group>
|
||||
<text macro="url-doi"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 正文中引用的文献标注格式 -->
|
||||
<macro name="citation-layout">
|
||||
<group>
|
||||
<text variable="citation-number"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- 参考文献表格式 -->
|
||||
<macro name="entry-layout">
|
||||
<choose>
|
||||
<if type="article-journal article-magazine article-newspaper" match="any">
|
||||
<text macro="article-in-periodical-layout"/>
|
||||
</if>
|
||||
<else-if type="periodical">
|
||||
<text macro="serial-layout"/>
|
||||
</else-if>
|
||||
<else-if type="patent">
|
||||
<text macro="patent-layout"/>
|
||||
</else-if>
|
||||
<else-if type="paper-conference" variable="container-title" match="any">
|
||||
<text macro="chapter-in-book-layout"/>
|
||||
</else-if>
|
||||
<else>
|
||||
<text macro="monograph-layout"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<citation collapse="citation-number" after-collapse-delimiter=",">
|
||||
<layout vertical-align="sup" delimiter="," prefix="[" suffix="]">
|
||||
<text macro="citation-layout"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography entry-spacing="0" et-al-min="4" et-al-use-first="3" second-field-align="flush">
|
||||
<!-- 取消这部分注释可以使用 CSL-M 的功能支持双语 -->
|
||||
<!-- <layout locale="en"><text variable="citation-number" prefix="[" suffix="]"/><text macro="entry-layout"/></layout> -->
|
||||
<layout>
|
||||
<text variable="citation-number" prefix="[" suffix="]"/>
|
||||
<text macro="entry-layout"/>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
@@ -0,0 +1,418 @@
|
||||
// clab-tooltip.js - 完全隔离事件版本(修改后的显示位置逻辑)
|
||||
(function() {
|
||||
// 全局变量存储从 RN.html 提取的内容
|
||||
let rnContentCache = {};
|
||||
let isRnContentLoaded = false;
|
||||
let activeTooltip = null;
|
||||
let hideTimer = null;
|
||||
let isMouseOverTooltip = false;
|
||||
|
||||
// 从 RN.html 提取内容(保持不变)
|
||||
async function loadRnContent() {
|
||||
try {
|
||||
console.log('加载 RN.html...');
|
||||
const response = await fetch('RN.html');
|
||||
if (!response.ok) throw new Error(`HTTP error: ${response.status}`);
|
||||
|
||||
const htmlText = await response.text();
|
||||
const parser = new DOMParser();
|
||||
const rnDoc = parser.parseFromString(htmlText, 'text/html');
|
||||
|
||||
// 查找所有包含 data-options 的元素
|
||||
const optionElements = rnDoc.querySelectorAll('[data-options]');
|
||||
console.log(`找到 ${optionElements.length} 个 data-options 元素`);
|
||||
|
||||
optionElements.forEach(element => {
|
||||
const optionValue = element.getAttribute('data-options');
|
||||
if (!optionValue) return;
|
||||
|
||||
// 向前查找最近的 blockquote
|
||||
let prevElement = element.previousElementSibling;
|
||||
let blockquote = null;
|
||||
|
||||
// 先找前一个兄弟元素
|
||||
while (prevElement) {
|
||||
if (prevElement.tagName === 'BLOCKQUOTE') {
|
||||
blockquote = prevElement;
|
||||
break;
|
||||
}
|
||||
prevElement = prevElement.previousElementSibling;
|
||||
}
|
||||
|
||||
// 如果没找到,向上查找
|
||||
if (!blockquote) {
|
||||
let parent = element.parentElement;
|
||||
while (parent) {
|
||||
let sibling = parent.previousElementSibling;
|
||||
while (sibling) {
|
||||
if (sibling.tagName === 'BLOCKQUOTE') {
|
||||
blockquote = sibling;
|
||||
break;
|
||||
}
|
||||
sibling = sibling.previousElementSibling;
|
||||
}
|
||||
if (blockquote) break;
|
||||
parent = parent.parentElement;
|
||||
}
|
||||
}
|
||||
|
||||
if (blockquote) {
|
||||
const lis = blockquote.querySelectorAll('li');
|
||||
if (lis.length > 0) {
|
||||
const liContents = Array.from(lis).map(li => li.textContent.trim());
|
||||
|
||||
if (!rnContentCache[optionValue]) {
|
||||
rnContentCache[optionValue] = [];
|
||||
}
|
||||
|
||||
// 存储所有引用
|
||||
rnContentCache[optionValue].push({
|
||||
contents: liContents
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
isRnContentLoaded = true;
|
||||
|
||||
console.log('内容加载完成');
|
||||
Object.keys(rnContentCache).forEach(key => {
|
||||
console.log(`"${key}": ${rnContentCache[key].length} Questions`);
|
||||
});
|
||||
|
||||
} catch (error) {
|
||||
console.error('加载失败:', error);
|
||||
}
|
||||
}
|
||||
|
||||
// 创建 tooltip(保持不变)
|
||||
function createTooltip() {
|
||||
const tooltip = document.createElement('div');
|
||||
tooltip.className = 'clab-tooltip';
|
||||
tooltip.id = 'clab-tooltip-element';
|
||||
|
||||
// 完全阻止所有事件冒泡
|
||||
const stopAllEvents = (e) => {
|
||||
e.stopPropagation();
|
||||
e.stopImmediatePropagation();
|
||||
e.preventDefault();
|
||||
return false;
|
||||
};
|
||||
|
||||
// 阻止所有可能的事件
|
||||
const events = [
|
||||
'mousedown', 'mouseup', 'click', 'dblclick',
|
||||
'mousemove', 'mouseover', 'mouseout', 'mouseenter', 'mouseleave',
|
||||
'wheel', 'scroll',
|
||||
'touchstart', 'touchmove', 'touchend', 'touchcancel',
|
||||
'pointerdown', 'pointermove', 'pointerup', 'pointercancel',
|
||||
'dragstart', 'dragover', 'drop'
|
||||
];
|
||||
|
||||
events.forEach(eventType => {
|
||||
tooltip.addEventListener(eventType, stopAllEvents, true); // 捕获阶段
|
||||
tooltip.addEventListener(eventType, stopAllEvents, false); // 冒泡阶段
|
||||
});
|
||||
|
||||
// 允许 wheel 事件用于滚动,但阻止冒泡
|
||||
tooltip.addEventListener('wheel', function(e) {
|
||||
e.stopPropagation();
|
||||
e.stopImmediatePropagation();
|
||||
// 允许默认的滚动行为
|
||||
}, { passive: false });
|
||||
|
||||
// 允许鼠标在 tooltip 内移动
|
||||
tooltip.addEventListener('mousemove', function(e) {
|
||||
e.stopPropagation();
|
||||
}, { passive: true });
|
||||
|
||||
document.body.appendChild(tooltip);
|
||||
return tooltip;
|
||||
}
|
||||
|
||||
// 显示 tooltip - 已修改位置逻辑
|
||||
function showTooltip(element, tooltip) {
|
||||
const rect = element.getBoundingClientRect();
|
||||
const optionValue = element.getAttribute('data-options');
|
||||
|
||||
// 清空内容
|
||||
tooltip.innerHTML = '';
|
||||
|
||||
if (rnContentCache[optionValue] && rnContentCache[optionValue].length > 0) {
|
||||
const entries = rnContentCache[optionValue];
|
||||
|
||||
// 标题显示选项
|
||||
const title = document.createElement('div');
|
||||
title.className = 'tooltip-title';
|
||||
title.textContent = optionValue;
|
||||
if (entries.length > 1) {
|
||||
title.textContent += ` (${entries.length} questions)`;
|
||||
}
|
||||
tooltip.appendChild(title);
|
||||
|
||||
// 显示所有引用
|
||||
entries.forEach((entry, entryIndex) => {
|
||||
const content = entry.contents;
|
||||
|
||||
if (content.length === 1) {
|
||||
// 单一条目
|
||||
const entryDiv = document.createElement('div');
|
||||
entryDiv.className = 'entry-single';
|
||||
|
||||
if (entries.length >= 1) {
|
||||
entryDiv.innerHTML = `<span class="q-label">Q${entryIndex + 1}:</span> ${content[0]}`;
|
||||
} else {
|
||||
entryDiv.textContent = content[0];
|
||||
}
|
||||
|
||||
tooltip.appendChild(entryDiv);
|
||||
} else {
|
||||
// 多个条目
|
||||
const entryDiv = document.createElement('div');
|
||||
entryDiv.className = 'entry-multiple';
|
||||
|
||||
if (entries.length > 1) {
|
||||
const header = document.createElement('div');
|
||||
header.className = 'q-header';
|
||||
header.textContent = `Q${entryIndex + 1}:`;
|
||||
entryDiv.appendChild(header);
|
||||
}
|
||||
|
||||
const ol = document.createElement('ol');
|
||||
ol.className = 'q-list';
|
||||
|
||||
content.forEach((item, itemIndex) => {
|
||||
const li = document.createElement('li');
|
||||
li.innerHTML = `<span class="q-sublabel">${entryIndex + 1}.${itemIndex + 1}</span> ${item}`;
|
||||
ol.appendChild(li);
|
||||
});
|
||||
|
||||
entryDiv.appendChild(ol);
|
||||
tooltip.appendChild(entryDiv);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// 没有找到内容
|
||||
const noContent = document.createElement('div');
|
||||
noContent.className = 'tooltip-no-content';
|
||||
noContent.textContent = '未找到相关内容';
|
||||
tooltip.appendChild(noContent);
|
||||
}
|
||||
|
||||
// 确保 tooltip 有合适的尺寸
|
||||
tooltip.style.position = 'fixed';
|
||||
tooltip.style.zIndex = '10000';
|
||||
tooltip.style.maxWidth = '400px';
|
||||
tooltip.style.maxHeight = '500px';
|
||||
tooltip.style.overflowY = 'auto';
|
||||
tooltip.style.boxSizing = 'border-box';
|
||||
|
||||
// 首先隐藏并获取尺寸
|
||||
tooltip.style.visibility = 'hidden';
|
||||
tooltip.classList.add('active');
|
||||
document.body.appendChild(tooltip);
|
||||
|
||||
const tooltipWidth = Math.min(tooltip.scrollWidth, 400);
|
||||
const tooltipHeight = Math.min(tooltip.scrollHeight, 500);
|
||||
|
||||
tooltip.style.width = tooltipWidth + 'px';
|
||||
tooltip.style.height = 'auto';
|
||||
|
||||
const padding = 5;
|
||||
const minDistanceFromEdge = 20;
|
||||
|
||||
let left, top;
|
||||
let position = 'right'; // 首选右侧
|
||||
|
||||
// 检查右侧空间
|
||||
if (rect.right + padding + tooltipWidth <= window.innerWidth - minDistanceFromEdge) {
|
||||
// 右侧有足够空间
|
||||
left = rect.right + padding;
|
||||
top = rect.top;
|
||||
position = 'right';
|
||||
} else if (rect.left - padding - tooltipWidth >= minDistanceFromEdge) {
|
||||
// 左侧有足够空间
|
||||
left = rect.left - padding - tooltipWidth;
|
||||
top = rect.top;
|
||||
position = 'left';
|
||||
} else {
|
||||
// 两侧都没有足够空间,显示在下方
|
||||
left = Math.max(
|
||||
minDistanceFromEdge,
|
||||
Math.min(
|
||||
rect.left + (rect.width - tooltipWidth) / 2,
|
||||
window.innerWidth - tooltipWidth - minDistanceFromEdge
|
||||
)
|
||||
);
|
||||
top = rect.bottom + padding;
|
||||
position = 'bottom';
|
||||
}
|
||||
|
||||
// 垂直边界检查 - 确保不超出屏幕
|
||||
if (top + tooltipHeight > window.innerHeight - minDistanceFromEdge) {
|
||||
// 如果下方空间不足,尝试显示在上方
|
||||
if (rect.top - padding - tooltipHeight >= minDistanceFromEdge) {
|
||||
top = rect.top - padding - tooltipHeight;
|
||||
} else {
|
||||
// 上下都不够,显示在中间
|
||||
top = Math.max(
|
||||
minDistanceFromEdge,
|
||||
Math.min(
|
||||
top,
|
||||
window.innerHeight - tooltipHeight - minDistanceFromEdge
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// 水平边界检查 - 确保不超出屏幕
|
||||
if (position === 'right' || position === 'left') {
|
||||
left = Math.max(
|
||||
minDistanceFromEdge,
|
||||
Math.min(left, window.innerWidth - tooltipWidth - minDistanceFromEdge)
|
||||
);
|
||||
}
|
||||
|
||||
tooltip.style.left = left + 'px';
|
||||
tooltip.style.top = top + 'px';
|
||||
tooltip.style.visibility = 'visible';
|
||||
|
||||
// 添加一个小箭头指示方向
|
||||
tooltip.setAttribute('data-position', position);
|
||||
|
||||
activeTooltip = tooltip;
|
||||
isMouseOverTooltip = true;
|
||||
|
||||
// 添加 overlay 防止 body 交互
|
||||
addOverlay();
|
||||
}
|
||||
|
||||
// 添加半透明 overlay(保持不变)
|
||||
function addOverlay() {
|
||||
// 移除现有的 overlay
|
||||
removeOverlay();
|
||||
|
||||
const overlay = document.createElement('div');
|
||||
overlay.id = 'tooltip-overlay';
|
||||
overlay.style.cssText = `
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 9999;
|
||||
background: transparent;
|
||||
pointer-events: none;
|
||||
`;
|
||||
document.body.appendChild(overlay);
|
||||
|
||||
// 将 overlay 的 pointer-events 设为 auto,但阻止所有事件
|
||||
overlay.addEventListener('mousedown', stopEvent, true);
|
||||
overlay.addEventListener('mouseup', stopEvent, true);
|
||||
overlay.addEventListener('click', stopEvent, true);
|
||||
overlay.addEventListener('mousemove', stopEvent, true);
|
||||
overlay.addEventListener('wheel', stopEvent, true);
|
||||
|
||||
function stopEvent(e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
e.stopImmediatePropagation();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 移除 overlay(保持不变)
|
||||
function removeOverlay() {
|
||||
const overlay = document.getElementById('tooltip-overlay');
|
||||
if (overlay) {
|
||||
overlay.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// 隐藏 tooltip(保持不变)
|
||||
function hideTooltip() {
|
||||
if (!isMouseOverTooltip && activeTooltip) {
|
||||
activeTooltip.classList.remove('active');
|
||||
activeTooltip = null;
|
||||
removeOverlay();
|
||||
}
|
||||
}
|
||||
|
||||
// 强制隐藏 tooltip(保持不变)
|
||||
function forceHideTooltip() {
|
||||
if (activeTooltip) {
|
||||
activeTooltip.classList.remove('active');
|
||||
activeTooltip = null;
|
||||
isMouseOverTooltip = false;
|
||||
removeOverlay();
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化(保持不变)
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
console.log('初始化 clab-tooltip');
|
||||
|
||||
const clabElements = document.querySelectorAll('.clab[data-options]');
|
||||
console.log(`找到 ${clabElements.length} 个 .clab 元素`);
|
||||
|
||||
if (clabElements.length === 0) return;
|
||||
|
||||
// 加载内容
|
||||
loadRnContent();
|
||||
|
||||
// 创建 tooltip
|
||||
const tooltip = createTooltip();
|
||||
|
||||
// tooltip 鼠标进入/离开
|
||||
tooltip.addEventListener('mouseenter', function() {
|
||||
isMouseOverTooltip = true;
|
||||
clearTimeout(hideTimer);
|
||||
});
|
||||
|
||||
tooltip.addEventListener('mouseleave', function() {
|
||||
isMouseOverTooltip = false;
|
||||
hideTimer = setTimeout(() => {
|
||||
forceHideTooltip();
|
||||
}, 100);
|
||||
});
|
||||
|
||||
// 为所有 .clab 元素添加事件监听
|
||||
clabElements.forEach(clab => {
|
||||
clab.addEventListener('mouseenter', function() {
|
||||
clearTimeout(hideTimer);
|
||||
|
||||
setTimeout(() => {
|
||||
if (isRnContentLoaded) {
|
||||
showTooltip(this, tooltip);
|
||||
}
|
||||
}, 100);
|
||||
});
|
||||
|
||||
clab.addEventListener('mouseleave', function() {
|
||||
hideTimer = setTimeout(() => {
|
||||
hideTooltip();
|
||||
}, 100);
|
||||
});
|
||||
});
|
||||
|
||||
// ESC 键隐藏 tooltip
|
||||
document.addEventListener('keydown', function(e) {
|
||||
if (e.key === 'Escape' && activeTooltip) {
|
||||
forceHideTooltip();
|
||||
}
|
||||
});
|
||||
|
||||
// 点击其他地方隐藏 tooltip
|
||||
document.addEventListener('click', function(e) {
|
||||
if (activeTooltip && !activeTooltip.contains(e.target)) {
|
||||
forceHideTooltip();
|
||||
}
|
||||
});
|
||||
|
||||
// 窗口大小改变时隐藏 tooltip
|
||||
window.addEventListener('resize', forceHideTooltip);
|
||||
|
||||
// 滚动时隐藏 tooltip
|
||||
window.addEventListener('scroll', forceHideTooltip);
|
||||
});
|
||||
})();
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.3 KiB |
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="84.75pt" height="84.75pt" viewBox="0 0 84.75 84.75">
|
||||
<defs>
|
||||
<clipPath id="clip-0">
|
||||
<path clip-rule="nonzero" d="M 13.617188 5.371094 L 71 5.371094 L 71 47.886719 L 13.617188 47.886719 Z M 13.617188 5.371094 "/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
<g clip-path="url(#clip-0)">
|
||||
<path fill-rule="nonzero" fill="rgb(100%, 100%, 100%)" fill-opacity="1" d="M 69.984375 17.222656 L 42.835938 5.476562 C 42.503906 5.335938 42.125 5.335938 41.792969 5.476562 L 14.644531 17.222656 C 13.777344 17.675781 13.4375 18.746094 13.886719 19.621094 C 14.054688 19.949219 14.320312 20.214844 14.644531 20.386719 L 41.792969 32.132812 C 42.121094 32.277344 42.496094 32.277344 42.824219 32.132812 L 63.9375 22.984375 L 63.9375 32.335938 C 62.050781 33.488281 61.449219 35.960938 62.59375 37.863281 C 62.925781 38.414062 63.386719 38.878906 63.9375 39.214844 L 63.9375 42.480469 L 66.714844 42.480469 L 66.714844 39.214844 C 68.601562 38.0625 69.203125 35.589844 68.058594 33.691406 C 67.722656 33.136719 67.261719 32.671875 66.714844 32.335938 L 66.714844 21.792969 L 69.984375 20.371094 C 70.847656 19.914062 71.179688 18.839844 70.726562 17.96875 C 70.558594 17.648438 70.300781 17.390625 69.984375 17.222656 Z M 42.316406 34.488281 C 41.898438 34.488281 41.488281 34.402344 41.105469 34.234375 L 24.179688 26.90625 L 24.179688 37.023438 C 24.179688 45.3125 36.523438 47.796875 40.378906 47.796875 L 44.199219 47.796875 C 47.085938 47.796875 60.402344 45.3125 60.402344 37.023438 L 60.402344 26.90625 L 43.472656 34.246094 C 43.070312 34.417969 42.636719 34.5 42.199219 34.488281 Z M 42.316406 34.488281 "/>
|
||||
</g>
|
||||
<path fill-rule="evenodd" fill="rgb(100%, 100%, 100%)" fill-opacity="1" d="M 31.371094 50.25 L 46.289062 50.25 C 48.054688 50.25 49.804688 50.445312 51.511719 50.828125 L 53.25 51.425781 L 44.996094 65.046875 C 42.972656 68.386719 42.972656 72.570312 44.996094 75.910156 L 45.066406 76.003906 L 45.632812 78.78125 C 40.878906 78.78125 36.125 81 31.371094 81 C 18.601562 81 8.25 78.78125 8.25 73.789062 L 8.25 72.359375 C 8.25 60.148438 18.601562 50.25 31.371094 50.25 Z M 31.371094 50.25 "/>
|
||||
<path fill-rule="evenodd" fill="rgb(100%, 100%, 100%)" fill-opacity="1" d="M 62.039062 50.550781 L 70.492188 64.464844 C 73.484375 69.390625 71.882812 75.789062 66.917969 78.753906 C 61.949219 81.722656 55.496094 80.136719 52.507812 75.210938 C 50.496094 71.902344 50.496094 67.769531 52.507812 64.464844 L 60.957031 50.554688 C 61.136719 50.257812 61.527344 50.160156 61.824219 50.339844 C 61.914062 50.394531 61.988281 50.464844 62.039062 50.554688 Z M 62.039062 50.550781 "/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
Executable
+384
@@ -0,0 +1,384 @@
|
||||
.udot {
|
||||
text-decoration-line: underline;
|
||||
text-decoration-color: rgb(50, 50, 50);
|
||||
text-decoration-style: dashed;
|
||||
text-decoration-thickness: 1px;
|
||||
}
|
||||
|
||||
.good {
|
||||
background-color: forestgreen;
|
||||
color: lightyellow;
|
||||
}
|
||||
|
||||
.bad {
|
||||
background-color: orangered;
|
||||
color: lightyellow;
|
||||
}
|
||||
|
||||
.del {
|
||||
text-decoration-line: line-through;
|
||||
text-decoration-color: rgb(222 13 13);
|
||||
text-decoration-style: initial;
|
||||
text-decoration-thickness: 1.5px;
|
||||
}
|
||||
|
||||
|
||||
.todo {
|
||||
background-color: darkorange;
|
||||
color: lightyellow;
|
||||
}
|
||||
|
||||
.com {
|
||||
background-color: #0025ff;
|
||||
font-weight: bold;
|
||||
color: lightyellow;
|
||||
}
|
||||
|
||||
.add {
|
||||
text-decoration-line: underline;
|
||||
text-decoration-color: rgb(222 13 13);
|
||||
background-color: violet;
|
||||
text-decoration-style: initial;
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
|
||||
|
||||
del {
|
||||
text-decoration-line: line-through;
|
||||
text-decoration-color: rgb(222 13 13);
|
||||
text-decoration-style: initial;
|
||||
text-decoration-thickness: 1.0px;
|
||||
}
|
||||
|
||||
|
||||
ins {
|
||||
text-decoration-color: rgb(222 93 93);
|
||||
background-color: violet;
|
||||
text-decoration-style: initial;
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* clab-style.css */
|
||||
.clab {
|
||||
display: inline !important;
|
||||
position: relative !important;
|
||||
cursor: pointer !important;
|
||||
padding: 2px 4px !important;
|
||||
margin: 0 1px !important;
|
||||
border-radius: 3px !important;
|
||||
font: inherit !important;
|
||||
color: #000000 !important;
|
||||
text-decoration: none !important;
|
||||
vertical-align: baseline !important;
|
||||
line-height: inherit !important;
|
||||
z-index: 1 !important;
|
||||
}
|
||||
|
||||
/* 随机背景色(使用预定义颜色) */
|
||||
.clab:nth-child(10n+1) { background-color: #E3F2FD !important; }
|
||||
.clab:nth-child(10n+2) { background-color: #F3E5F5 !important; }
|
||||
.clab:nth-child(10n+3) { background-color: #E8F5E9 !important; }
|
||||
.clab:nth-child(10n+4) { background-color: #FFF3E0 !important; }
|
||||
.clab:nth-child(10n+5) { background-color: #FCE4EC !important; }
|
||||
.clab:nth-child(10n+6) { background-color: #E0F7FA !important; }
|
||||
.clab:nth-child(10n+7) { background-color: #F1F8E9 !important; }
|
||||
.clab:nth-child(10n+8) { background-color: #FFF8E1 !important; }
|
||||
.clab:nth-child(10n+9) { background-color: #EDE7F6 !important; }
|
||||
.clab:nth-child(10n+10) { background-color: #E8EAF6 !important; }
|
||||
|
||||
/* 基础hover效果 */
|
||||
span.clab:hover {
|
||||
outline: 2px solid rgba(0,0,0,0.2) !important;
|
||||
outline-offset: 2px !important;
|
||||
z-index: 1000 !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* clab-tooltip 下方显示样式 */
|
||||
.clab-tooltip {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
color: white;
|
||||
padding: 5px;
|
||||
border: 1px solid #444;
|
||||
/* -webkit-user-select: none; */
|
||||
position: fixed;
|
||||
background: rgba(0, 0, 0, 0.95);
|
||||
border-radius: 8px;
|
||||
z-index: 10000;
|
||||
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3),
|
||||
0 0 0 1px rgba(255, 255, 255, 0.1);
|
||||
font-size: 14px;
|
||||
line-height: 1.1;
|
||||
max-width: 500px;
|
||||
max-height: 800px;
|
||||
overflow-y: auto;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
|
||||
overscroll-behavior: contain;
|
||||
pointer-events: auto !important;
|
||||
}
|
||||
|
||||
|
||||
/* Tooltip 箭头 */
|
||||
.tooltip-arrow {
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 6px solid transparent;
|
||||
border-bottom-color: #2a2a2a;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
/* tooltip 在上方的箭头(向下) */
|
||||
.clab-tooltip.above .tooltip-arrow {
|
||||
border-top-color: #2a2a2a;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
/* 标题 */
|
||||
.tooltip-title {
|
||||
font-weight: 600;
|
||||
color: #FF9800;
|
||||
margin-bottom: 6px;
|
||||
padding-bottom: 4px;
|
||||
border-bottom: 1px solid #444;
|
||||
font-size: 14px;
|
||||
font-family: monospace;
|
||||
line-height: 0.8;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* 单一条目 */
|
||||
.entry-single {
|
||||
padding: 4px 4px;
|
||||
margin-bottom: 6px;
|
||||
background: rgba(255, 255, 255, 0.05);
|
||||
border-radius: 6px;
|
||||
border-left: 3px solid #ffffff;
|
||||
line-height: 1.2;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/* Q标签样式 */
|
||||
.q-label {
|
||||
display: inline-block;
|
||||
color: #FF9800;
|
||||
font-weight: 600;
|
||||
margin-right: 8px;
|
||||
min-width: 35px;
|
||||
}
|
||||
|
||||
/* 多个条目的引用 */
|
||||
.entry-multiple {
|
||||
padding: 4px 4px;
|
||||
margin-bottom: 6px;
|
||||
background: rgba(255, 255, 255, 0.05);
|
||||
border-radius: 6px;
|
||||
border-left: 3px solid #ffffff;
|
||||
line-height: 1.2;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/* 多引用标题 */
|
||||
.q-header {
|
||||
color: #FF9800;
|
||||
font-weight: 600;
|
||||
margin-bottom: 8px;
|
||||
font-size: 13px;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* 列表 */
|
||||
.q-list {
|
||||
margin: 0;
|
||||
padding-left: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.q-list li {
|
||||
margin-bottom: 10px;
|
||||
padding-left: 0;
|
||||
line-height: 1.2;
|
||||
position: relative;
|
||||
cursor: default;
|
||||
padding: 4px 0;
|
||||
}
|
||||
|
||||
/* 子标签样式 */
|
||||
.q-sublabel {
|
||||
display: inline-block;
|
||||
color: #4CAF50;
|
||||
font-weight: 600;
|
||||
margin-right: 2px;
|
||||
min-width: 25px;
|
||||
}
|
||||
|
||||
/* 条目间空行 */
|
||||
/* .entry-spacer { */
|
||||
/* height: 12px; */
|
||||
/* pointer-events: none; */
|
||||
/* } */
|
||||
|
||||
/* 无内容 */
|
||||
.tooltip-no-content {
|
||||
color: #ff6b6b;
|
||||
font-style: italic;
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
background: rgba(255, 107, 107, 0.05);
|
||||
border-radius: 6px;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/* 滚动条 */
|
||||
.clab-tooltip::-webkit-scrollbar {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
}
|
||||
|
||||
.clab-tooltip::-webkit-scrollbar-track {
|
||||
background: #1a1a1a;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.clab-tooltip::-webkit-scrollbar-thumb {
|
||||
background: #4CAF50;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.clab-tooltip::-webkit-scrollbar-thumb:hover {
|
||||
background: #45a049;
|
||||
}
|
||||
|
||||
|
||||
/* 允许内容文本选择 */
|
||||
.entry-single,
|
||||
.entry-multiple,
|
||||
.q-list li {
|
||||
user-select: text;
|
||||
-webkit-user-select: text;
|
||||
}
|
||||
|
||||
/* 鼠标在 tooltip 上时的样式 */
|
||||
.clab-tooltip:hover {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
|
||||
.clab-tooltip.active {
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
.clab-tooltip ul {
|
||||
margin: 0;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.clab-tooltip li {
|
||||
margin-bottom: 8px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.clab-tooltip .source {
|
||||
margin-top: 10px;
|
||||
padding-top: 10px;
|
||||
border-top: 1px solid rgba(255,255,255,0.1);
|
||||
font-size: 11px;
|
||||
color: #aaa;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.clab-tooltip .entry {
|
||||
margin-bottom: 15px;
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 1px solid rgba(255,255,255,0.1);
|
||||
}
|
||||
|
||||
.clab-tooltip .entry:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rem {
|
||||
background-color: darkorange;
|
||||
color: lightyellow;
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
|
||||
|
||||
#criticnav {
|
||||
position: fixed;
|
||||
z-index: 1100;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: 120px;
|
||||
border-bottom: solid 1px #ffffff;
|
||||
margin: 0;
|
||||
padding: 10;
|
||||
background-color: rgb(143 38 38 / 95%);
|
||||
color: #ffffff;
|
||||
font-size: 12px;
|
||||
font-family: "Helvetica Neue", helvetica, arial, sans-serif !important
|
||||
}
|
||||
|
||||
#criticnav ul {
|
||||
list-style-type: none;
|
||||
width: 90%;
|
||||
margin: 0 auto;
|
||||
padding: 0
|
||||
}
|
||||
|
||||
#criticnav ul li {
|
||||
display: block;
|
||||
width: 100px;
|
||||
min-width: 80px;
|
||||
text-align: center;
|
||||
padding: 5px 0 3px !important;
|
||||
margin: 5px 2px !important;
|
||||
line-height: 1em;
|
||||
float: center;
|
||||
text-transform: uppercase;
|
||||
cursor: pointer;
|
||||
border-radius: 20px;
|
||||
border: 3px solid rgba(255,255,255,0);
|
||||
color: #fff !important
|
||||
}
|
||||
|
||||
p {
|
||||
text-align: left; /* 小屏幕左对齐 */
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
p {
|
||||
text-align: justify;
|
||||
hyphens: auto; /* 自动断字 */
|
||||
-webkit-hyphens: auto; /* Safari 支持 */
|
||||
/* 可选:控制断字行为 */
|
||||
hyphenate-limit-chars: 6 3 2; /* 最小单词长度 前/后最小字符数 */
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
body .page-columns {
|
||||
display: grid;
|
||||
gap: 0;
|
||||
grid-template-columns: [screen-start] 0.5em [screen-start-inset] 0fr [page-start page-start-inset] 5px [body-start-outset] 5px [body-start] 0.5em [body-content-start] minmax(350px, calc(855px - 0em)) [body-content-end] 0.5em [body-end] 5px [body-end-outset] minmax(75px, 550px) [page-end-inset] 1px [page-end] 1fr [screen-end-inset] 0.5em [screen-end];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@media (min-width: 1280px) {
|
||||
body .page-columns {
|
||||
display: grid;
|
||||
gap: 0;
|
||||
grid-template-columns: [screen-start] 3.5em [screen-start-inset] 2fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 3.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 400px) [page-end-inset] 35px [page-end] 2fr [screen-end-inset] 1.5em [screen-end];
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,415 @@
|
||||
/*-- scss:defaults --*/
|
||||
|
||||
$theme: "drwater" !default;
|
||||
|
||||
//
|
||||
// Color system
|
||||
//
|
||||
|
||||
$white: #ffffff !default;
|
||||
$gray-100: #f8f9fa !default;
|
||||
$gray-200: #e9ecef !default;
|
||||
$gray-300: #dee2e6 !default;
|
||||
$gray-400: #ced4da !default;
|
||||
$gray-500: #adb5bd !default;
|
||||
$gray-600: #868e96 !default;
|
||||
$gray-700: #495057 !default;
|
||||
$gray-800: #373a3c !default;
|
||||
$gray-900: #212529 !default;
|
||||
$black: #000000 !default;
|
||||
|
||||
$blue: #2780e3 !default;
|
||||
$indigo: #6610f2 !default;
|
||||
$purple: #170c3a !default;
|
||||
$pink: #a52c60 !default;
|
||||
$red: #cf4446 !default;
|
||||
$orange: #ee6a24 !default;
|
||||
$light-orange: #fb9e07 !default;
|
||||
$yellow: #f6d645 !default;
|
||||
$green: #118230 !default;
|
||||
$teal: #20c997 !default;
|
||||
$cyan: #3093cf !default;
|
||||
|
||||
$primary: $pink !default;
|
||||
$secondary: $gray-700 !default;
|
||||
$success: $green !default;
|
||||
$info: $cyan !default;
|
||||
$warning: $orange !default;
|
||||
$danger: $red !default;
|
||||
$light: $gray-400 !default;
|
||||
$dark: $black !default;
|
||||
|
||||
// Fonts
|
||||
|
||||
$font-family-sans-serif: "Libre Franklin" !default;
|
||||
|
||||
$headings-font-family: "Jost" !default;
|
||||
$headings-font-weight: 600 !default;
|
||||
|
||||
$navbar-font-family: "Jost" !default;
|
||||
$toc-font-family: "Jost" !default;
|
||||
$footer-font-family: "Jost" !default;
|
||||
|
||||
// Body
|
||||
$body-color: $gray-900 !default;
|
||||
|
||||
// Links
|
||||
$link-color: $orange !default;
|
||||
$link-decoration: none !default;
|
||||
$link-hover-color: $red !default;
|
||||
$link-hover-decoration: underline !default;
|
||||
|
||||
// Inline code
|
||||
$code-bg: $gray-200 !default;
|
||||
$code-color: $gray-900 !default;
|
||||
|
||||
// Code copy
|
||||
$btn-code-copy-color-active: $orange !default;
|
||||
|
||||
// TOC
|
||||
$toc-color: $orange;
|
||||
$toc-font-size: 1em;
|
||||
|
||||
// Navbar
|
||||
$navbar-bg: $purple !default;
|
||||
$navbar-fg: $white !default;
|
||||
$navbar-hl: $light-orange !default;
|
||||
|
||||
// Footer
|
||||
$footer-bg: $gray-900 !default;
|
||||
$footer-fg: $gray-300 !default;
|
||||
|
||||
/*-- scss:rules --*/
|
||||
|
||||
$web-font-path: "https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Libre+Franklin:ital,wght@0,100..900;1,100..900&display=swap" !default;
|
||||
|
||||
@if $web-font-path {
|
||||
@import url($web-font-path);
|
||||
}
|
||||
|
||||
body {
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
/* Logo 悬停效果 */
|
||||
.navbar-brand img {
|
||||
transition: all 0.3s ease;
|
||||
filter: brightness(0) invert(1);
|
||||
|
||||
&:hover {
|
||||
filter: brightness(0) invert(0.55) sepia(1) saturate(2000%) hue-rotate(-8deg) brightness(1.05) contrast(1.2);
|
||||
transform: scale(1.05);
|
||||
}
|
||||
}
|
||||
|
||||
// =============================================
|
||||
// 桌面端样式 - 使用悬停展开下拉菜单
|
||||
// =============================================
|
||||
@media (min-width: 992px) {
|
||||
/* 导航栏主菜单项样式 */
|
||||
.navbar-nav .nav-item {
|
||||
position: relative;
|
||||
margin: 0 0.2rem;
|
||||
|
||||
.nav-link {
|
||||
position: relative;
|
||||
color: $navbar-fg !important;
|
||||
font-weight: 500;
|
||||
padding: 0.75rem 1rem !important;
|
||||
border-radius: 8px;
|
||||
transition: all 0.3s ease;
|
||||
z-index: 1;
|
||||
|
||||
/* 玻璃效果背景 */
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: rgba($white, 0.1);
|
||||
backdrop-filter: blur(10px);
|
||||
border-radius: 8px;
|
||||
opacity: 0;
|
||||
transition: all 0.3s ease;
|
||||
z-index: -1;
|
||||
border: 1px solid rgba($white, 0.2);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $light-orange !important;
|
||||
transform: translateY(-2px);
|
||||
|
||||
&::before {
|
||||
opacity: 1;
|
||||
background: rgba($white, 0.15);
|
||||
backdrop-filter: blur(15px);
|
||||
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
}
|
||||
|
||||
/* 激活状态 */
|
||||
&.active {
|
||||
color: $light-orange !important;
|
||||
font-weight: 600;
|
||||
|
||||
&::before {
|
||||
opacity: 1;
|
||||
background: rgba($light-orange, 0.2);
|
||||
backdrop-filter: blur(15px);
|
||||
border: 1px solid rgba($light-orange, 0.3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 有下拉菜单的主菜单项特殊样式 */
|
||||
.navbar-nav .nav-item.dropdown {
|
||||
.nav-link {
|
||||
padding-right: 2rem !important;
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
right: 1rem;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
}
|
||||
|
||||
&:hover .nav-link::before {
|
||||
opacity: 1;
|
||||
background: rgba($white, 0.2);
|
||||
backdrop-filter: blur(20px);
|
||||
border-bottom-left-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
&:hover .nav-link::after {
|
||||
transform: translateY(-50%) rotate(-180deg);
|
||||
border-top-color: $light-orange;
|
||||
}
|
||||
}
|
||||
|
||||
/* 桌面端下拉菜单悬停效果 */
|
||||
.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
|
||||
display: block !important;
|
||||
opacity: 1 !important;
|
||||
visibility: visible !important;
|
||||
transform: translateY(0) !important;
|
||||
}
|
||||
|
||||
.dropdown-menu {
|
||||
display: block;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
transform: translateY(-10px);
|
||||
transition: all 0.3s ease;
|
||||
background: rgba($purple, 0.98) !important;
|
||||
backdrop-filter: blur(20px);
|
||||
border: 1px solid rgba($white, 0.1);
|
||||
border-top: none;
|
||||
border-radius: 0 0 8px 8px;
|
||||
box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
|
||||
margin-top: -1px;
|
||||
padding: 0.5rem 0;
|
||||
|
||||
&.show {
|
||||
display: block;
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-item {
|
||||
color: $white !important;
|
||||
font-family: $navbar-font-family;
|
||||
padding: 0.75rem 1.5rem;
|
||||
transition: all 0.2s ease;
|
||||
position: relative;
|
||||
|
||||
/* 下拉菜单项的玻璃效果 */
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: rgba($white, 0.05);
|
||||
border-radius: 4px;
|
||||
opacity: 0;
|
||||
transition: all 0.2s ease;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
&:hover, &:focus {
|
||||
color: $light-orange !important;
|
||||
transform: translateX(5px);
|
||||
background: transparent !important;
|
||||
|
||||
&::before {
|
||||
opacity: 1;
|
||||
background: rgba($white, 0.1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 确保下拉菜单与主菜单视觉上连接 */
|
||||
.navbar-nav .nav-item.dropdown:hover .nav-link {
|
||||
border-bottom-left-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// =============================================
|
||||
// 移动端样式 - 使用点击展开下拉菜单
|
||||
// =============================================
|
||||
@media (max-width: 991.98px) {
|
||||
/* 完全重置移动端导航样式,使用 Bootstrap 默认行为 */
|
||||
.navbar-collapse {
|
||||
background: rgba($purple, 0.98);
|
||||
backdrop-filter: blur(10px);
|
||||
border-top: 1px solid rgba($white, 0.1);
|
||||
margin-top: 0.5rem;
|
||||
padding: 0.5rem 0;
|
||||
|
||||
.navbar-nav {
|
||||
.nav-item {
|
||||
margin: 0;
|
||||
|
||||
.nav-link {
|
||||
color: $navbar-fg !important;
|
||||
padding: 1rem 1.5rem !important;
|
||||
border-radius: 0;
|
||||
transition: all 0.2s ease;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
|
||||
&:hover {
|
||||
color: $light-orange !important;
|
||||
background: rgba($white, 0.1);
|
||||
}
|
||||
|
||||
&.active {
|
||||
color: $light-orange !important;
|
||||
background: rgba($light-orange, 0.1);
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
/* 下拉菜单项样式 */
|
||||
&.dropdown {
|
||||
.dropdown-toggle::after {
|
||||
transition: transform 0.3s ease;
|
||||
}
|
||||
|
||||
&.show {
|
||||
.dropdown-toggle {
|
||||
color: $light-orange !important;
|
||||
background: rgba($white, 0.15);
|
||||
|
||||
&::after {
|
||||
transform: rotate(-180deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-menu {
|
||||
background: rgba(darken($purple, 5%), 0.95) !important;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
position: static;
|
||||
float: none;
|
||||
display: none;
|
||||
|
||||
&.show {
|
||||
display: block !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 移动端下拉菜单项 */
|
||||
.dropdown-item {
|
||||
color: $navbar-fg !important;
|
||||
padding: 0.875rem 1.5rem 0.875rem 2.5rem !important;
|
||||
border-radius: 0;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
&:hover, &:focus {
|
||||
color: $light-orange !important;
|
||||
background: rgba($white, 0.1) !important;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
&.active {
|
||||
color: $light-orange !important;
|
||||
background: rgba($light-orange, 0.1) !important;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
/* 移动端导航栏折叠按钮 */
|
||||
.navbar-toggler {
|
||||
border: 1px solid rgba($white, 0.2);
|
||||
padding: 0.5rem 0.75rem;
|
||||
|
||||
&:focus {
|
||||
box-shadow: 0 0 0 0.2rem rgba($light-orange, 0.25);
|
||||
}
|
||||
|
||||
.navbar-toggler-icon {
|
||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
||||
}
|
||||
}
|
||||
|
||||
/* 禁用桌面端的悬停效果 */
|
||||
.navbar-nav .nav-item .nav-link::before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
// =============================================
|
||||
// 通用样式
|
||||
// =============================================
|
||||
|
||||
/* 导航栏整体样式 */
|
||||
.navbar {
|
||||
backdrop-filter: blur(10px);
|
||||
background: rgba($purple, 0.95) !important;
|
||||
border-bottom: 1px solid rgba($white, 0.1);
|
||||
}
|
||||
|
||||
/* 为有下拉菜单的导航项添加视觉指示 */
|
||||
.navbar-nav .nav-item.dropdown > .nav-link::after {
|
||||
display: inline-block;
|
||||
margin-left: 0.255em;
|
||||
vertical-align: 0.255em;
|
||||
content: "";
|
||||
border-top: 0.3em solid;
|
||||
border-right: 0.3em solid transparent;
|
||||
border-bottom: 0;
|
||||
border-left: 0.3em solid transparent;
|
||||
}
|
||||
|
||||
/* 确保 Bootstrap 的 JavaScript 交互正常工作 */
|
||||
.navbar-nav .dropdown-toggle::after {
|
||||
display: inline-block !important;
|
||||
}
|
||||
|
||||
/* 修复移动端点击事件 */
|
||||
.navbar-nav .nav-item.dropdown .nav-link {
|
||||
cursor: pointer;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
+239
@@ -0,0 +1,239 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="never" default-locale="en-US">
|
||||
<info>
|
||||
<title>Elsevier - Harvard (with titles)</title>
|
||||
<id>http://www.zotero.org/styles/elsevier-harvard</id>
|
||||
<link href="http://www.zotero.org/styles/elsevier-harvard" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/ecology-letters" rel="template"/>
|
||||
<link href="http://www.elsevier.com/journals/biological-conservation/0006-3207/guide-for-authors#68000" rel="documentation"/>
|
||||
<author>
|
||||
<name>David Kaplan</name>
|
||||
<email>david.kaplan@ird.fr</email>
|
||||
</author>
|
||||
<contributor>
|
||||
<name>Simon Kornblith</name>
|
||||
<email>simon@simonster.com</email>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Bruce D'Arcus</name>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Curtis M. Humphrey</name>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Richard Karnesky</name>
|
||||
<email>karnesky+zotero@gmail.com</email>
|
||||
<uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Sebastian Karcher</name>
|
||||
</contributor>
|
||||
<category citation-format="author-date"/>
|
||||
<category field="biology"/>
|
||||
<category field="generic-base"/>
|
||||
<updated>2014-03-04T00:09:00+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<macro name="container">
|
||||
<choose>
|
||||
<if type="chapter paper-conference" match="any">
|
||||
<text term="in" prefix=", " suffix=": "/>
|
||||
<names variable="editor translator" delimiter=", " suffix=", ">
|
||||
<name name-as-sort-order="all" sort-separator=", " initialize-with="." delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" text-case="capitalize-first" prefix=" (" suffix=")"/>
|
||||
</names>
|
||||
<group delimiter=", ">
|
||||
<text variable="container-title" text-case="title"/>
|
||||
<text variable="collection-title" text-case="title"/>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group prefix=", " delimiter=", ">
|
||||
<text variable="container-title"/>
|
||||
<text variable="collection-title"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group prefix=". " delimiter=", ">
|
||||
<text variable="container-title" form="short"/>
|
||||
<text variable="collection-title"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name name-as-sort-order="all" sort-separator=", " initialize-with="." delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" prefix=" (" suffix=")" text-case="capitalize-first"/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
<names variable="translator"/>
|
||||
<text macro="title"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="author-short">
|
||||
<names variable="author">
|
||||
<name form="short" and="text" delimiter=", " initialize-with=". "/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
<names variable="translator"/>
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<text variable="title" form="short" font-style="italic"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title" form="short" quotes="true"/>
|
||||
</else>
|
||||
</choose>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="access">
|
||||
<choose>
|
||||
<if variable="DOI">
|
||||
<text variable="DOI" prefix="https://doi.org/"/>
|
||||
</if>
|
||||
<else-if type="webpage post-weblog" match="any">
|
||||
<group delimiter=" ">
|
||||
<text value="URL"/>
|
||||
<text variable="URL"/>
|
||||
<group prefix="(" suffix=").">
|
||||
<text term="accessed" suffix=" "/>
|
||||
<date variable="accessed">
|
||||
<date-part name="month" form="numeric" suffix="."/>
|
||||
<date-part name="day" suffix="."/>
|
||||
<date-part name="year" form="short"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="report thesis" match="any">
|
||||
<text variable="title"/>
|
||||
<group prefix=" (" suffix=")" delimiter=" ">
|
||||
<text variable="genre"/>
|
||||
<text variable="number" prefix="No. "/>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song speech" match="any">
|
||||
<text variable="title"/>
|
||||
<text macro="edition" prefix=", "/>
|
||||
</else-if>
|
||||
<else-if type="webpage">
|
||||
<text variable="title"/>
|
||||
<text value="WWW Document" prefix=" [" suffix="]"/>
|
||||
</else-if>
|
||||
<else>
|
||||
<text variable="title"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="publisher">
|
||||
<group delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="event">
|
||||
<choose>
|
||||
<if variable="event">
|
||||
<text term="presented at" text-case="capitalize-first" suffix=" "/>
|
||||
<text variable="event"/>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="issued">
|
||||
<choose>
|
||||
<if variable="issued">
|
||||
<date variable="issued">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</if>
|
||||
<else>
|
||||
<text term="no date" form="short"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<group delimiter=" ">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition" suffix="."/>
|
||||
</else>
|
||||
</choose>
|
||||
<text value="ed"/>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="locators">
|
||||
<choose>
|
||||
<if type="article-journal article-magazine article-newspaper" match="any">
|
||||
<group prefix=" " delimiter=", ">
|
||||
<group>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song thesis" match="any">
|
||||
<group delimiter=", " prefix=". ">
|
||||
<text macro="event"/>
|
||||
<text macro="publisher"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="chapter paper-conference" match="any">
|
||||
<group delimiter=", " prefix=". ">
|
||||
<text macro="event"/>
|
||||
<text macro="publisher"/>
|
||||
<group>
|
||||
<label variable="page" form="short" suffix=" "/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="patent">
|
||||
<text variable="number" prefix=". "/>
|
||||
</else-if>
|
||||
</choose>
|
||||
</macro>
|
||||
<citation et-al-min="3" et-al-use-first="1" disambiguate-add-givenname="true" disambiguate-add-year-suffix="true" collapse="year" cite-group-delimiter=", ">
|
||||
<sort>
|
||||
<key macro="author"/>
|
||||
<key macro="issued" sort="descending"/>
|
||||
</sort>
|
||||
<layout prefix="(" suffix=")" delimiter="; ">
|
||||
<group delimiter=", ">
|
||||
<text macro="author-short"/>
|
||||
<text macro="issued"/>
|
||||
<group delimiter=" ">
|
||||
<label variable="locator" form="short"/>
|
||||
<text variable="locator"/>
|
||||
</group>
|
||||
</group>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography hanging-indent="true" entry-spacing="0" line-spacing="1">
|
||||
<sort>
|
||||
<key macro="author"/>
|
||||
<key macro="issued" sort="descending"/>
|
||||
</sort>
|
||||
<layout>
|
||||
<group suffix=".">
|
||||
<text macro="author" suffix=","/>
|
||||
<text macro="issued" prefix=" "/>
|
||||
<group prefix=". ">
|
||||
<text macro="title"/>
|
||||
<text macro="container"/>
|
||||
<text macro="locators"/>
|
||||
</group>
|
||||
</group>
|
||||
<text macro="access" prefix=". "/>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" default-locale="en-US">
|
||||
<info>
|
||||
<title>Global Change Biology</title>
|
||||
<title-short>GCB</title-short>
|
||||
<id>http://www.zotero.org/styles/global-change-biology</id>
|
||||
<link href="http://www.zotero.org/styles/global-change-biology" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/apa" rel="independent-parent"/>
|
||||
<link href="https://onlinelibrary.wiley.com/page/journal/13652486/homepage/forauthors.html" rel="documentation"/>
|
||||
<category citation-format="author-date"/>
|
||||
<issn>1354-1013</issn>
|
||||
<eissn>1365-2486</eissn>
|
||||
<updated>2018-06-03T03:31:35+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
</style>
|
||||
@@ -0,0 +1,165 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" default-locale="en-US" version="1.0" demote-non-dropping-particle="sort-only">
|
||||
<info>
|
||||
<title>Journal of Hazardous Materials</title>
|
||||
<id>http://www.zotero.org/styles/journal-of-hazardous-materials</id>
|
||||
<link href="http://www.zotero.org/styles/journal-of-hazardous-materials" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/springer-basic-brackets" rel="template"/>
|
||||
<link href="https://www.sciencedirect.com/journal/journal-of-hazardous-materials/publish/guide-for-authors" rel="documentation"/>
|
||||
<author>
|
||||
<name>Patrick O'Brien</name>
|
||||
</author>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="generic-base"/>
|
||||
<issn>0304-3894</issn>
|
||||
<eissn>1873-3336</eissn>
|
||||
<updated>2025-07-25T12:53:42+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<locale>
|
||||
<terms>
|
||||
<term name="et-al">et al</term>
|
||||
</terms>
|
||||
</locale>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
<names variable="translator"/>
|
||||
<text variable="title"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short" strip-periods="true"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="book">
|
||||
<group delimiter=", ">
|
||||
<text variable="title"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="year-parenth">
|
||||
<date variable="issued">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</macro>
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout prefix="[" suffix="]" delimiter=", ">
|
||||
<text variable="citation-number"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography second-field-align="flush">
|
||||
<layout>
|
||||
<text variable="citation-number" prefix="[" suffix="]"/>
|
||||
<group delimiter=". ">
|
||||
<group delimiter=", ">
|
||||
<text macro="author"/>
|
||||
<text macro="year-parenth"/>
|
||||
</group>
|
||||
<text macro="title"/>
|
||||
</group>
|
||||
<choose>
|
||||
<if type="chapter paper-conference" match="any">
|
||||
<group delimiter=" " prefix=". ">
|
||||
<text term="in" text-case="capitalize-first" suffix=":"/>
|
||||
<names variable="editor">
|
||||
<name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" strip-periods="true" prefix=" (" suffix=")"/>
|
||||
</names>
|
||||
<group delimiter=", ">
|
||||
<text variable="container-title"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
</group>
|
||||
<group prefix=". " delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
<group delimiter=" ">
|
||||
<label variable="page" form="short" strip-periods="true"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="article-journal">
|
||||
<choose>
|
||||
<if variable="page volume" match="any">
|
||||
<group prefix=". " delimiter=". ">
|
||||
<group delimiter=" ">
|
||||
<text variable="container-title" form="short" strip-periods="true"/>
|
||||
<group delimiter=", ">
|
||||
<text variable="volume"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
<text prefix="https://doi.org/" variable="DOI"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<group prefix=". " delimiter=". ">
|
||||
<text variable="container-title" form="short" strip-periods="true"/>
|
||||
<text prefix="https://doi.org/" variable="DOI"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</else-if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group prefix=". " delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="webpage post-weblog post" match="any">
|
||||
<group prefix=". " delimiter=". ">
|
||||
<text variable="container-title" form="short"/>
|
||||
<text variable="URL"/>
|
||||
<group delimiter=" ">
|
||||
<text term="accessed" text-case="capitalize-first"/>
|
||||
<date variable="accessed">
|
||||
<date-part name="day" suffix=" "/>
|
||||
<date-part name="month" form="short" suffix=" " strip-periods="true"/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="thesis">
|
||||
<group prefix=". " delimiter=", ">
|
||||
<text variable="genre" text-case="capitalize-first"/>
|
||||
<text variable="publisher"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group prefix=". " delimiter=" ">
|
||||
<text variable="container-title" form="short"/>
|
||||
<group delimiter=":">
|
||||
<text variable="volume"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" default-locale="en-GB">
|
||||
<!-- Generated with https://github.com/citation-style-language/utilities/tree/master/generate_dependent_styles/data/npg -->
|
||||
<info>
|
||||
<title>Nature Biotechnology</title>
|
||||
<id>http://www.zotero.org/styles/nature-biotechnology</id>
|
||||
<link href="http://www.zotero.org/styles/nature-biotechnology" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/nature" rel="independent-parent"/>
|
||||
<link href="http://www.nature.com/nbt/pdf/gta.pdf" rel="documentation"/>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="biology"/>
|
||||
<issn>1087-0156</issn>
|
||||
<eissn>1546-1696</eissn>
|
||||
<updated>2014-06-17T02:29:16+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
</style>
|
||||
@@ -0,0 +1,154 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-GB">
|
||||
<info>
|
||||
<title>Nature</title>
|
||||
<id>http://www.zotero.org/styles/nature</id>
|
||||
<link href="http://www.zotero.org/styles/nature" rel="self"/>
|
||||
<link href="http://www.nature.com/nature/authors/gta/index.html#a5.4" rel="documentation"/>
|
||||
<link href="http://www.nature.com/srep/publish/guidelines#references" rel="documentation"/>
|
||||
<author>
|
||||
<name>Michael Berkowitz</name>
|
||||
<email>mberkowi@gmu.edu</email>
|
||||
</author>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="science"/>
|
||||
<category field="generic-base"/>
|
||||
<issn>0028-0836</issn>
|
||||
<eissn>1476-4687</eissn>
|
||||
<updated>2022-07-02T13:18:26+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<text variable="title" font-style="italic"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name sort-separator=", " delimiter=", " and="symbol" initialize-with=". " delimiter-precedes-last="never" name-as-sort-order="all"/>
|
||||
<label form="short" prefix=", "/>
|
||||
<et-al font-style="italic"/>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="access">
|
||||
<choose>
|
||||
<if variable="volume" type="article" match="any"/>
|
||||
<else-if variable="DOI">
|
||||
<text variable="DOI" prefix="doi:"/>
|
||||
</else-if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="issuance">
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture song thesis chapter paper-conference" match="any">
|
||||
<group delimiter="; " suffix=".">
|
||||
<group delimiter=", " prefix="(" suffix=")">
|
||||
<text variable="publisher" form="long"/>
|
||||
<date variable="issued">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="article">
|
||||
<group delimiter=" ">
|
||||
<choose>
|
||||
<if variable="genre" match="any">
|
||||
<text variable="genre" text-case="capitalize-first"/>
|
||||
</if>
|
||||
<else>
|
||||
<text term="article" text-case="capitalize-first"/>
|
||||
</else>
|
||||
</choose>
|
||||
<text term="at"/>
|
||||
<choose>
|
||||
<if variable="DOI" match="any">
|
||||
<text variable="DOI" prefix="https://doi.org/"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="URL"/>
|
||||
</else>
|
||||
</choose>
|
||||
<date date-parts="year" form="text" variable="issued" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="report webpage post post-weblog" match="any">
|
||||
<group delimiter=" ">
|
||||
<text variable="URL"/>
|
||||
<date date-parts="year" form="text" variable="issued" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<date variable="issued" prefix="(" suffix=")">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="container-title">
|
||||
<choose>
|
||||
<if type="article-journal">
|
||||
<text variable="container-title" font-style="italic" form="short"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="editor">
|
||||
<choose>
|
||||
<if type="chapter paper-conference" match="any">
|
||||
<names variable="editor" prefix="(" suffix=")">
|
||||
<label form="short" suffix=" "/>
|
||||
<name and="symbol" delimiter-precedes-last="never" initialize-with=". " name-as-sort-order="all"/>
|
||||
</names>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="volume">
|
||||
<choose>
|
||||
<if type="article-journal" match="any">
|
||||
<text variable="volume" font-weight="bold" suffix=","/>
|
||||
</if>
|
||||
<else>
|
||||
<group delimiter=" ">
|
||||
<label variable="volume" form="short"/>
|
||||
<text variable="volume"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout vertical-align="sup" delimiter=",">
|
||||
<text variable="citation-number"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography et-al-min="6" et-al-use-first="1" second-field-align="flush" entry-spacing="0" line-spacing="2">
|
||||
<layout suffix=".">
|
||||
<text variable="citation-number" suffix="."/>
|
||||
<group delimiter=" ">
|
||||
<text macro="author" suffix="."/>
|
||||
<text macro="title" suffix="."/>
|
||||
<choose>
|
||||
<if type="chapter paper-conference" match="any">
|
||||
<text term="in"/>
|
||||
</if>
|
||||
</choose>
|
||||
<text macro="container-title"/>
|
||||
<text macro="editor"/>
|
||||
<text macro="volume"/>
|
||||
<text variable="page"/>
|
||||
<text macro="issuance"/>
|
||||
<text macro="access"/>
|
||||
</group>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
@@ -0,0 +1,229 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-US">
|
||||
<info>
|
||||
<title>Proceedings of the National Academy of Sciences of the United States of America</title>
|
||||
<title-short>PNAS</title-short>
|
||||
<id>http://www.zotero.org/styles/pnas</id>
|
||||
<link href="http://www.zotero.org/styles/pnas" rel="self"/>
|
||||
<link href="http://www.pnas.org/site/authors/procedures.xhtml" rel="documentation"/>
|
||||
<author>
|
||||
<name>Julian Onions</name>
|
||||
<email>julian.onions@gmail.com</email>
|
||||
</author>
|
||||
<contributor>
|
||||
<name>Rintze Zelle</name>
|
||||
<uri>http://twitter.com/rintzezelle</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Bela Hausmann</name>
|
||||
<uri>https://github.com/and3k</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Patrick O'Brien</name>
|
||||
</contributor>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="science"/>
|
||||
<issn>0027-8424</issn>
|
||||
<eissn>1091-6490</eissn>
|
||||
<summary>The Proceedings of the National Academy of Sciences Journal style as per the updated guidelines from 04/2019.</summary>
|
||||
<updated>2024-03-27T16:45:36+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<macro name="editor">
|
||||
<names variable="editor" prefix=" " delimiter=", ">
|
||||
<name delimiter-precedes-last="always" initialize-with=". " sort-separator=" "/>
|
||||
<et-al font-style="italic"/>
|
||||
<label form="short" text-case="capitalize-first" strip-periods="false" prefix=", "/>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name delimiter-precedes-last="always" initialize-with=". " sort-separator=" "/>
|
||||
<et-al font-style="italic"/>
|
||||
<label form="short" text-case="capitalize-first" prefix=", "/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="access">
|
||||
<choose>
|
||||
<if match="any" type="webpage post post-weblog article">
|
||||
<group delimiter=" ">
|
||||
<group delimiter=": ">
|
||||
<text term="available at" text-case="capitalize-first"/>
|
||||
<text variable="URL"/>
|
||||
</group>
|
||||
<group prefix=" [" suffix="]">
|
||||
<text term="accessed" text-case="capitalize-first" suffix=" "/>
|
||||
<date variable="accessed">
|
||||
<date-part name="day" suffix=" "/>
|
||||
<date-part name="month" suffix=" "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="article-journal" match="any">
|
||||
<choose>
|
||||
<if variable="volume" match="none">
|
||||
<text variable="DOI" prefix="https://doi.org/"/>
|
||||
</if>
|
||||
</choose>
|
||||
</else-if>
|
||||
<else-if type="article" match="any">
|
||||
<group delimiter=" ">
|
||||
<group delimiter=": ">
|
||||
<text term="available at" text-case="capitalize-first"/>
|
||||
<text variable="URL"/>
|
||||
</group>
|
||||
<group prefix="(" suffix=")">
|
||||
<text term="accessed" suffix=" "/>
|
||||
<date variable="accessed">
|
||||
<date-part name="day" suffix=" "/>
|
||||
<date-part name="month" suffix=" "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="dataset software" match="any">
|
||||
<group delimiter=". ">
|
||||
<text variable="DOI" prefix="https://doi.org/"/>
|
||||
<date variable="issued" prefix="Deposited ">
|
||||
<date-part name="day" suffix=" "/>
|
||||
<date-part name="month" suffix=" "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</else-if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="book">
|
||||
<text variable="title" font-style="italic"/>
|
||||
</if>
|
||||
<else-if type="chapter report thesis" match="any">
|
||||
<text variable="title" quotes="true"/>
|
||||
</else-if>
|
||||
<else>
|
||||
<text variable="title"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="publisher">
|
||||
<text variable="publisher"/>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short" text-case="capitalize-first"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="year-date">
|
||||
<date variable="issued">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</macro>
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout prefix="(" suffix=")" delimiter=", ">
|
||||
<text variable="citation-number"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography second-field-align="flush" et-al-min="6" et-al-use-first="1" delimiter-precedes-et-al="always">
|
||||
<layout suffix=".">
|
||||
<text variable="citation-number" suffix=". "/>
|
||||
<group delimiter=", " suffix=".">
|
||||
<text macro="author"/>
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group delimiter=" ">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text macro="editor"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
<group delimiter=", " prefix="(" suffix=")">
|
||||
<text macro="publisher"/>
|
||||
<text macro="year-date"/>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="chapter paper-conference" match="any">
|
||||
<group delimiter=" ">
|
||||
<text macro="title"/>
|
||||
<text term="in"/>
|
||||
<group delimiter=", ">
|
||||
<text variable="container-title" text-case="title" font-style="italic"/>
|
||||
<text variable="collection-title" prefix=" " suffix="."/>
|
||||
<text macro="edition"/>
|
||||
<group delimiter=" ">
|
||||
<text macro="editor"/>
|
||||
<group delimiter=", " prefix="(" suffix=")">
|
||||
<text macro="publisher"/>
|
||||
<text macro="year-date"/>
|
||||
</group>
|
||||
</group>
|
||||
<group>
|
||||
<label suffix=" " variable="page" form="short"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="thesis" match="any">
|
||||
<group delimiter=" ">
|
||||
<group delimiter=", " suffix=".">
|
||||
<text macro="title"/>
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
<text macro="year-date" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="article" match="any">
|
||||
<group delimiter=". " suffix=".">
|
||||
<text macro="title"/>
|
||||
<group delimiter=" ">
|
||||
<text variable="container-title" form="short" font-style="italic"/>
|
||||
<text term="preprint" text-case="capitalize-first" prefix="[" suffix="]"/>
|
||||
<text macro="year-date" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="dataset" match="any">
|
||||
<group delimiter=". ">
|
||||
<text variable="title"/>
|
||||
<text variable="publisher"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group delimiter=". ">
|
||||
<text macro="title"/>
|
||||
<group delimiter=" ">
|
||||
<text variable="container-title" form="short" font-style="italic"/>
|
||||
<group delimiter=", ">
|
||||
<text variable="volume" font-weight="bold"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
<text macro="year-date" prefix="(" suffix=")"/>
|
||||
</group>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</group>
|
||||
<text prefix=" " macro="access"/>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
Binary file not shown.
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 9.7 KiB |
Binary file not shown.
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 85 KiB |
@@ -0,0 +1,33 @@
|
||||
/*-- scss:defaults --*/
|
||||
|
||||
/*-- scss:rules --*/
|
||||
|
||||
:root {
|
||||
--r-background-color: #fff;
|
||||
--r-main-font: Source Sans Pro, simhei, microsoft yahei;
|
||||
--r-main-font-size: 32px; // 正文字体大小
|
||||
--r-main-color: #434343; // 正文颜色,松烟墨:#434343 乌墨:#1A1A1A;#006D6D
|
||||
--r-block-margin: 12px;
|
||||
--r-heading-margin: 0 0 12px 0;
|
||||
--r-heading-font: Source Sans Pro, simhei, microsoft yahei;
|
||||
--r-heading-color: #0c4c8a; //标题颜色:深青蓝色:296364;海军蓝或藏青色:0c4c8a;深青色:006D6D;钻蓝色:0F52BA;酒红:800020
|
||||
--r-heading-line-height: 1.2em;
|
||||
--r-heading-letter-spacing: normal;
|
||||
--r-heading-text-transform: none;
|
||||
--r-heading-text-shadow: none;
|
||||
--r-heading-font-weight: 900;
|
||||
--r-heading1-text-shadow: none;
|
||||
--r-heading1-size: 2.5em;
|
||||
--r-heading2-size: 1.6em;
|
||||
--r-heading3-size: 1.3em;
|
||||
--r-heading4-size: 1em;
|
||||
--r-code-font: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono,
|
||||
Courier New, monospace;
|
||||
--r-link-color: #ef562d;
|
||||
--r-link-color-dark: #ef562d;
|
||||
--r-link-color-hover: #d13076;
|
||||
--r-selection-background-color: #98bdef;
|
||||
--r-selection-color: #fff;
|
||||
--quarto-hl-fu-color: #c53800;
|
||||
}
|
||||
|
||||
Executable
+181
@@ -0,0 +1,181 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-GB">
|
||||
<info>
|
||||
<title>The ISME Journal</title>
|
||||
<id>http://www.zotero.org/styles/the-isme-journal</id>
|
||||
<link href="http://www.zotero.org/styles/the-isme-journal" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/journal-of-frailty-and-aging" rel="template"/>
|
||||
<link href="http://www.nature.com/ismej/ismej_new_gta.pdf" rel="documentation"/>
|
||||
<author>
|
||||
<name>Patrick O'Brien</name>
|
||||
<email>obrienpat86@gmail.com</email>
|
||||
</author>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="biology"/>
|
||||
<issn>1751-7362</issn>
|
||||
<eissn>1751-7370</eissn>
|
||||
<summary>The ISME Journal style, which is not the same as for Nature</summary>
|
||||
<updated>2018-03-19T15:30:26+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" strip-periods="true" prefix=" (" suffix=")"/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
<names variable="translator"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="editor">
|
||||
<text term="in" text-case="capitalize-first" suffix=": "/>
|
||||
<names variable="editor">
|
||||
<name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>
|
||||
<label form="short" strip-periods="true" prefix=" (" suffix=")."/>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short" strip-periods="true"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="book">
|
||||
<group delimiter=", " suffix=". ">
|
||||
<text variable="title"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title" suffix=". "/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="publisher">
|
||||
<group delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="year-date">
|
||||
<date variable="issued">
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</macro>
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout prefix="[" suffix="]" delimiter=", ">
|
||||
<text variable="citation-number"/>
|
||||
</layout>
|
||||
</citation>
|
||||
<bibliography et-al-min="7" et-al-use-first="6" second-field-align="flush" line-spacing="2" entry-spacing="0">
|
||||
<layout>
|
||||
<text variable="citation-number" suffix=". "/>
|
||||
<group delimiter=". ">
|
||||
<text macro="author"/>
|
||||
<text macro="title"/>
|
||||
</group>
|
||||
<choose>
|
||||
<if type="chapter">
|
||||
<text macro="editor"/>
|
||||
<group delimiter=". " suffix=". ">
|
||||
<group prefix=" " delimiter=", ">
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
<text macro="year-date"/>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<group delimiter=" ">
|
||||
<label variable="page" form="short" strip-periods="true"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="paper-conference">
|
||||
<text macro="editor"/>
|
||||
<group delimiter=". " suffix=". ">
|
||||
<group prefix=" " delimiter=", ">
|
||||
<text variable="container-title" form="short" font-style="italic"/>
|
||||
<text macro="edition"/>
|
||||
</group>
|
||||
<text macro="year-date"/>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<group delimiter=" ">
|
||||
<label variable="page" form="short" strip-periods="true"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="article-journal">
|
||||
<group delimiter="; " suffix=". ">
|
||||
<group delimiter=" ">
|
||||
<text variable="container-title" suffix=" " form="short" strip-periods="true" font-style="italic"/>
|
||||
<text macro="year-date"/>
|
||||
</group>
|
||||
<group delimiter=": ">
|
||||
<text variable="volume" font-weight="bold"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group delimiter=". " suffix=". ">
|
||||
<text variable="container-title" suffix=" " font-style="italic"/>
|
||||
<text macro="year-date"/>
|
||||
<text macro="publisher"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="webpage">
|
||||
<group suffix=". ">
|
||||
<text variable="container-title" suffix=". " font-style="italic"/>
|
||||
<text variable="URL" suffix=". "/>
|
||||
<date variable="accessed">
|
||||
<date-part prefix="Accessed " name="day" suffix=" "/>
|
||||
<date-part name="month" form="short" suffix=" " strip-periods="true"/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="thesis">
|
||||
<group delimiter=". " suffix=". ">
|
||||
<text variable="container-title" suffix=" " font-style="italic"/>
|
||||
<text macro="year-date"/>
|
||||
<group delimiter=", ">
|
||||
<text variable="genre"/>
|
||||
<text variable="publisher"/>
|
||||
</group>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group>
|
||||
<group delimiter=". " suffix=". ">
|
||||
<text variable="container-title" form="short" suffix=" " strip-periods="true" font-style="italic"/>
|
||||
<text macro="year-date"/>
|
||||
<text macro="publisher"/>
|
||||
</group>
|
||||
<group prefix=", " delimiter=": ">
|
||||
<text variable="volume" font-weight="bold"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" default-locale="en-US">
|
||||
<!-- Elsevier, generated from "elsevier" metadata at https://github.com/citation-style-language/journals -->
|
||||
<info>
|
||||
<title>Water Research</title>
|
||||
<id>http://www.zotero.org/styles/water-research</id>
|
||||
<link href="http://www.zotero.org/styles/water-research" rel="self"/>
|
||||
<link href="http://www.zotero.org/styles/elsevier-harvard" rel="independent-parent"/>
|
||||
<category citation-format="author-date"/>
|
||||
<issn>0043-1354</issn>
|
||||
<updated>2018-03-09T05:06:46+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
</style>
|
||||
Reference in New Issue
Block a user