From b3213fc892726f234eb5e96320acb7709e24b4de Mon Sep 17 00:00:00 2001 From: Kristofer Koishigawa Date: Tue, 18 Feb 2020 01:40:55 +0900 Subject: [PATCH] fix(i18n): chinese test suite (#38220) * fix: Chinese test suite Add localeTiltes, descriptions, and adjust test text and testStrings to get the automated test suite working. * fix: ran script, updated testStrings and solutions --- ...es-by-using-sufficient-contrast.chinese.md | 4 +- ...-content-with-the-audio-element.chinese.md | 2 +- ...reen-reader-by-using-custom-css.chinese.md | 4 +- ...navigable-with-html-access-keys.chinese.md | 2 +- ...th-the-html5-datetime-attribute.chinese.md | 8 +- ...chical-relationships-of-content.chinese.md | 4 +- ...x-shadow-to-a-card-like-element.chinese.md | 4 +- ...ckground-color-property-of-text.chinese.md | 6 +- ...lements-to-complementary-colors.chinese.md | 8 +- ...ement-using-the-height-property.chinese.md | 2 +- ...he-hover-state-of-an-anchor-tag.chinese.md | 4 +- .../adjust-the-hue-of-a-color.chinese.md | 12 +- ...a-header-versus-a-paragraph-tag.chinese.md | 2 +- .../adjust-the-tone-of-a-color.chinese.md | 2 +- ...lement-using-the-width-property.chinese.md | 2 +- ...mate-elements-at-variable-rates.chinese.md | 2 +- ...ing-an-infinite-animation-count.chinese.md | 2 +- ...iple-elements-at-variable-rates.chinese.md | 6 +- ...tally-using-the-margin-property.chinese.md | 2 +- ...e-an-elements-relative-position.chinese.md | 4 +- ...-animation-timing-with-keywords.chinese.md | 4 +- ...ments-with-the-z-index-property.chinese.md | 2 +- ...e-a-gradual-css-linear-gradient.chinese.md | 2 +- .../create-a-graphic-using-css.chinese.md | 6 +- ...ontal-line-using-the-hr-element.chinese.md | 4 +- ...omplex-shape-using-css-and-html.chinese.md | 8 +- ...te-movement-using-css-animation.chinese.md | 6 +- ...e-pattern-as-a-background-image.chinese.md | 2 +- ...e-using-the-text-align-property.chinese.md | 4 +- ...g-an-element-from-left-to-right.chinese.md | 2 +- ...rease-the-opacity-of-an-element.chinese.md | 2 +- ...earn-about-complementary-colors.chinese.md | 4 +- .../learn-about-tertiary-colors.chinese.md | 6 +- .../learn-how-bezier-curves-work.chinese.md | 4 +- ...s-and-animation-properties-work.chinese.md | 12 +- ...arent-with-absolute-positioning.chinese.md | 6 +- ...r-window-with-fixed-positioning.chinese.md | 6 +- ...ing-an-infinite-animation-count.chinese.md | 4 +- ...re-natural-using-a-bezier-curve.chinese.md | 2 +- ...odify-fill-mode-of-an-animation.chinese.md | 2 +- ...tioned-element-with-css-offsets.chinese.md | 4 +- ...r-right-with-the-float-property.chinese.md | 4 +- ...e-for-multiple-heading-elements.chinese.md | 12 +- ...the-font-size-of-paragraph-text.chinese.md | 2 +- ...t-for-multiple-heading-elements.chinese.md | 12 +- ...t-the-line-height-of-paragraphs.chinese.md | 2 +- ...-bezier-curve-to-move-a-graphic.chinese.md | 6 +- ...ent-to-create-a-striped-element.chinese.md | 12 +- ...nge-the-hover-state-of-a-button.chinese.md | 4 +- ...kew-an-element-along-the-x-axis.chinese.md | 2 +- ...kew-an-element-along-the-y-axis.chinese.md | 2 +- ...o-change-the-size-of-an-element.chinese.md | 2 +- ...ty-to-scale-an-element-on-hover.chinese.md | 2 +- ...se-the-em-tag-to-italicize-text.chinese.md | 4 +- ...the-s-tag-to-strikethrough-text.chinese.md | 6 +- ...he-strong-tag-to-make-text-bold.chinese.md | 6 +- ...property-to-make-text-uppercase.chinese.md | 4 +- ...dd-borders-around-your-elements.chinese.md | 1 + ...ding-to-each-side-of-an-element.chinese.md | 1 + ...nded-corners-with-border-radius.chinese.md | 3 +- ...adjust-the-margin-of-an-element.chinese.md | 2 +- ...allback-value-to-a-css-variable.chinese.md | 4 +- ...-a-variable-for-a-specific-area.chinese.md | 2 +- .../change-the-color-of-text.chinese.md | 5 +- ...nge-the-font-size-of-an-element.chinese.md | 3 +- .../create-a-custom-css-variable.chinese.md | 2 +- .../basic-css/import-a-google-font.chinese.md | 4 +- ...it-styles-from-the-body-element.chinese.md | 3 +- ...lar-images-with-a-border-radius.chinese.md | 2 +- ...other-styles-by-using-important.chinese.md | 4 +- ...ioritize-one-style-over-another.chinese.md | 2 +- .../set-the-id-of-an-element.chinese.md | 1 + .../basic-css/size-your-images.chinese.md | 2 +- ...pecify-how-fonts-should-degrade.chinese.md | 2 +- ...tiple-elements-with-a-css-class.chinese.md | 14 +- .../style-the-html-body-element.chinese.md | 4 +- ...-absolute-versus-relative-units.chinese.md | 2 +- ...a-css-class-to-style-an-element.chinese.md | 3 +- .../use-a-custom-css-variable.chinese.md | 8 +- ...edia-query-to-change-a-variable.chinese.md | 4 +- .../use-abbreviated-hex-code.chinese.md | 8 +- ...pecify-the-margin-of-an-element.chinese.md | 1 + ...ecify-the-padding-of-an-element.chinese.md | 2 +- ...css-selectors-to-style-elements.chinese.md | 1 + ...change-several-elements-at-once.chinese.md | 6 +- ...se-hex-code-for-specific-colors.chinese.md | 5 +- .../use-hex-code-to-mix-colors.chinese.md | 8 +- .../use-rgb-to-mix-colors.chinese.md | 12 +- ...se-rgb-values-to-color-elements.chinese.md | 2 +- .../add-a-submit-button-to-a-form.chinese.md | 4 +- .../add-images-to-your-website.chinese.md | 4 +- .../comment-out-html.chinese.md | 2 +- .../create-a-set-of-checkboxes.chinese.md | 4 +- .../create-a-set-of-radio-buttons.chinese.md | 4 +- .../create-an-ordered-list.chinese.md | 4 +- ...ad-and-body-of-an-html-document.chinese.md | 2 +- .../delete-html-elements.chinese.md | 6 +- .../headline-with-the-h2-element.chinese.md | 2 +- .../introduction-to-html5-elements.chinese.md | 4 +- ...rnal-pages-with-anchor-elements.chinese.md | 2 +- ...chor-element-within-a-paragraph.chinese.md | 6 +- .../say-hello-to-html-elements.chinese.md | 2 +- .../uncomment-html.chinese.md | 2 +- ...-superpowers-to-the-tweet-embed.chinese.md | 14 +- ...-using-the-align-items-property.chinese.md | 2 +- ...ng-the-justify-content-property.chinese.md | 2 +- ...ate-a-column-in-the-tweet-embed.chinese.md | 2 +- ...-create-rows-in-the-tweet-embed.chinese.md | 4 +- ...play-flex-to-position-two-boxes.chinese.md | 2 +- ...ems-property-in-the-tweet-embed.chinese.md | 2 +- .../use-the-align-self-property.chinese.md | 4 +- ...set-the-initial-size-of-an-item.chinese.md | 8 +- ...ction-property-to-make-a-column.chinese.md | 2 +- ...irection-property-to-make-a-row.chinese.md | 2 +- ...x-grow-property-to-expand-items.chinese.md | 4 +- ...use-the-flex-shorthand-property.chinese.md | 6 +- ...shrink-property-to-shrink-items.chinese.md | 4 +- ...roperty-to-wrap-a-row-or-column.chinese.md | 2 +- ...ent-property-in-the-tweet-embed.chinese.md | 2 +- ...der-property-to-rearrange-items.chinese.md | 4 +- ...umns-with-grid-template-columns.chinese.md | 2 +- .../add-gaps-faster-with-grid-gap.chinese.md | 2 +- ...dd-rows-with-grid-template-rows.chinese.md | 2 +- ...orizontally-using-justify-items.chinese.md | 2 +- ...ms-vertically-using-align-items.chinese.md | 2 +- ...horizontally-using-justify-self.chinese.md | 2 +- ...tem-vertically-using-align-self.chinese.md | 2 +- ...olumn-gap-using-grid-column-gap.chinese.md | 2 +- ...te-a-row-gap-using-grid-row-gap.chinese.md | 2 +- ...lexible-layouts-using-auto-fill.chinese.md | 2 +- ...flexible-layouts-using-auto-fit.chinese.md | 2 +- .../create-grids-within-grids.chinese.md | 4 +- .../create-your-first-css-grid.chinese.md | 2 +- ...-the-grid-into-an-area-template.chinese.md | 2 +- ...-size-using-the-minmax-function.chinese.md | 2 +- ...as-using-the-grid-area-property.chinese.md | 2 +- ...ition-using-the-repeat-function.chinese.md | 2 +- ...hout-creating-an-areas-template.chinese.md | 2 +- ...-grid-column-to-control-spacing.chinese.md | 2 +- ...use-grid-row-to-control-spacing.chinese.md | 2 +- ...es-to-create-responsive-layouts.chinese.md | 2 +- .../make-an-image-responsive.chinese.md | 6 +- .../make-typography-responsive.chinese.md | 4 +- ...-for-higher-resolution-displays.chinese.md | 4 +- ...ld-a-personal-portfolio-webpage.chinese.md | 2 +- .../build-a-product-landing-page.chinese.md | 2 +- .../build-a-survey-form.chinese.md | 2 +- ...-a-technical-documentation-page.chinese.md | 2 +- .../build-a-tribute-page.chinese.md | 2 +- .../boo-who.chinese.md | 20 +-- .../chunky-monkey.chinese.md | 14 +- .../confirm-the-ending.chinese.md | 22 +-- .../convert-celsius-to-fahrenheit.chinese.md | 12 +- .../factorialize-a-number.chinese.md | 10 +- .../falsy-bouncer.chinese.md | 8 +- ...nd-the-longest-word-in-a-string.chinese.md | 12 +- .../finders-keepers.chinese.md | 4 +- .../mutations.chinese.md | 18 +-- ...repeat-a-string-repeat-a-string.chinese.md | 14 +- ...eturn-largest-numbers-in-arrays.chinese.md | 8 +- .../reverse-a-string.chinese.md | 8 +- .../slice-and-splice.chinese.md | 12 +- .../title-case-a-sentence.chinese.md | 8 +- .../truncate-a-string.chinese.md | 12 +- .../where-do-i-belong.chinese.md | 32 ++--- ...contents-using-bracket-notation.chinese.md | 8 +- ...rty-names-with-bracket-notation.chinese.md | 10 +- ...-an-array-with-push-and-unshift.chinese.md | 6 +- .../add-items-using-splice.chinese.md | 8 +- ...lue-pairs-to-javascript-objects.chinese.md | 10 +- ...ence-of-an-element-with-indexof.chinese.md | 10 +- ...arrays-with-the-spread-operator.chinese.md | 4 +- ...-array-with-the-spread-operator.chinese.md | 10 +- .../copy-array-items-using-slice.chinese.md | 4 +- ...omplex-multi-dimensional-arrays.chinese.md | 10 +- ...ll-object-keys-with-object.keys.chinese.md | 4 +- ...an-arrays-items-using-for-loops.chinese.md | 10 +- ...fy-an-array-stored-in-an-object.chinese.md | 6 +- ...-object-nested-within-an-object.chinese.md | 8 +- ...rom-an-array-with-pop-and-shift.chinese.md | 6 +- ...y-to-store-a-collection-of-data.chinese.md | 10 +- ...ord-to-remove-object-properties.chinese.md | 4 +- .../access-array-data-with-indexes.chinese.md | 4 +- ...dimensional-arrays-with-indexes.chinese.md | 4 +- .../accessing-nested-arrays.chinese.md | 4 +- .../accessing-nested-objects.chinese.md | 4 +- ...roperties-with-bracket-notation.chinese.md | 10 +- ...ct-properties-with-dot-notation.chinese.md | 10 +- ...bject-properties-with-variables.chinese.md | 12 +- ...operties-to-a-javascript-object.chinese.md | 4 +- ...add-two-numbers-with-javascript.chinese.md | 4 +- ...ult-option-in-switch-statements.chinese.md | 16 +-- .../appending-variables-to-strings.chinese.md | 4 +- ...ssignment-with-a-returned-value.chinese.md | 4 +- .../build-javascript-objects.chinese.md | 10 +- .../chaining-if-else-statements.chinese.md | 26 ++-- .../comment-your-javascript-code.chinese.md | 4 +- ...ison-with-the-equality-operator.chinese.md | 8 +- ...-with-the-greater-than-operator.chinese.md | 16 +-- ...eater-than-or-equal-to-operator.chinese.md | 16 +-- ...on-with-the-inequality-operator.chinese.md | 12 +- ...son-with-the-less-than-operator.chinese.md | 14 +- ...-less-than-or-equal-to-operator.chinese.md | 16 +-- ...th-the-strict-equality-operator.chinese.md | 8 +- ...-the-strict-inequality-operator.chinese.md | 10 +- ...s-with-the-logical-and-operator.chinese.md | 20 +-- ...ns-with-the-logical-or-operator.chinese.md | 20 +-- ...ignment-with-augmented-addition.chinese.md | 10 +- ...ignment-with-augmented-division.chinese.md | 10 +- ...t-with-augmented-multiplication.chinese.md | 10 +- ...ment-with-augmented-subtraction.chinese.md | 10 +- ...ting-strings-with-plus-operator.chinese.md | 8 +- ...s-with-the-plus-equals-operator.chinese.md | 4 +- ...tructing-strings-with-variables.chinese.md | 4 +- ...count-backwards-with-a-for-loop.chinese.md | 6 +- .../counting-cards.chinese.md | 14 +- ...decimal-numbers-with-javascript.chinese.md | 4 +- .../declare-javascript-variables.chinese.md | 2 +- .../declare-string-variables.chinese.md | 4 +- ...rement-a-number-with-javascript.chinese.md | 8 +- ...erties-from-a-javascript-object.chinese.md | 4 +- ...imal-by-another-with-javascript.chinese.md | 6 +- ...mber-by-another-with-javascript.chinese.md | 4 +- ...aping-literal-quotes-in-strings.chinese.md | 4 +- ...nding-a-remainder-in-javascript.chinese.md | 6 +- ...andom-fractions-with-javascript.chinese.md | 6 +- ...m-whole-numbers-with-javascript.chinese.md | 8 +- ...om-whole-numbers-within-a-range.chinese.md | 8 +- .../global-scope-and-functions.chinese.md | 8 +- ...al-vs.-local-scope-in-functions.chinese.md | 6 +- .../basic-javascript/golf-code.chinese.md | 22 +-- ...rement-a-number-with-javascript.chinese.md | 8 +- ...es-with-the-assignment-operator.chinese.md | 2 +- .../introducing-else-if-statements.chinese.md | 16 +-- .../introducing-else-statements.chinese.md | 14 +- ...ate-odd-numbers-with-a-for-loop.chinese.md | 4 +- ...hrough-an-array-with-a-for-loop.chinese.md | 8 +- ...ith-javascript-do...while-loops.chinese.md | 6 +- ...erate-with-javascript-for-loops.chinese.md | 4 +- ...ate-with-javascript-while-loops.chinese.md | 4 +- .../local-scope-and-functions.chinese.md | 4 +- ...cal-order-in-if-else-statements.chinese.md | 6 +- .../manipulate-arrays-with-pop.chinese.md | 6 +- .../manipulate-arrays-with-push.chinese.md | 2 +- .../manipulate-arrays-with-shift.chinese.md | 4 +- .../manipulate-arrays-with-unshift.chinese.md | 2 +- .../manipulating-complex-objects.chinese.md | 18 +-- .../modify-array-data-with-indexes.chinese.md | 4 +- ...al-options-in-switch-statements.chinese.md | 22 +-- ...ly-two-decimals-with-javascript.chinese.md | 4 +- ...ply-two-numbers-with-javascript.chinese.md | 4 +- ...-one-array-within-another-array.chinese.md | 2 +- .../nesting-for-loops.chinese.md | 6 +- ...ues-to-functions-with-arguments.chinese.md | 8 +- ...tice-comparing-different-values.chinese.md | 6 +- .../profile-lookup.chinese.md | 12 +- ...ting-strings-with-single-quotes.chinese.md | 4 +- .../record-collection.chinese.md | 14 +- ...cing-if-else-chains-with-switch.chinese.md | 20 +-- ...lue-from-a-function-with-return.chinese.md | 8 +- ...urn-early-pattern-for-functions.chinese.md | 12 +- ...g-boolean-values-from-functions.chinese.md | 6 +- ...-options-with-switch-statements.chinese.md | 32 ++++- .../basic-javascript/shopping-list.chinese.md | 8 +- .../basic-javascript/stand-in-line.chinese.md | 10 +- ...ariable-using-javascript-arrays.chinese.md | 6 +- ...es-with-the-assignment-operator.chinese.md | 8 +- ...er-from-another-with-javascript.chinese.md | 6 +- .../testing-objects-for-properties.chinese.md | 6 +- .../understand-string-immutability.chinese.md | 4 +- .../understanding-boolean-values.chinese.md | 4 +- ...g-case-sensitivity-in-variables.chinese.md | 12 +- ...-value-returned-from-a-function.chinese.md | 8 +- ...tanding-uninitialized-variables.chinese.md | 8 +- .../updating-object-properties.chinese.md | 4 +- ...the-first-character-in-a-string.chinese.md | 4 +- ...-the-last-character-in-a-string.chinese.md | 4 +- ...d-the-nth-character-in-a-string.chinese.md | 4 +- ...h-to-last-character-in-a-string.chinese.md | 4 +- ...tional-logic-with-if-statements.chinese.md | 10 +- ...e-conditional-ternary-operators.chinese.md | 8 +- ...he-conditional-ternary-operator.chinese.md | 8 +- ...-parseint-function-with-a-radix.chinese.md | 10 +- .../use-the-parseint-function.chinese.md | 10 +- .../using-objects-for-lookups.chinese.md | 18 +-- .../basic-javascript/word-blanks.chinese.md | 6 +- ...sable-javascript-with-functions.chinese.md | 6 +- ...g-order-when-calling-a-function.chinese.md | 4 +- ...renthesis-after-a-function-call.chinese.md | 4 +- ...led-variable-and-function-names.chinese.md | 10 +- ...age-of-single-and-double-quotes.chinese.md | 4 +- ...-one-errors-when-using-indexing.chinese.md | 8 +- ...eses-brackets-braces-and-quotes.chinese.md | 4 +- ...or-instead-of-equality-operator.chinese.md | 4 +- ...with-a-valid-terminal-condition.chinese.md | 4 +- ...alizing-variables-inside-a-loop.chinese.md | 6 +- ...o-check-the-value-of-a-variable.chinese.md | 2 +- ...to-check-the-type-of-a-variable.chinese.md | 6 +- ...pes-of-the-var-and-let-keywords.chinese.md | 6 +- ...rt-fallback-with-export-default.chinese.md | 2 +- ...variable-with-the-const-keyword.chinese.md | 8 +- ...etween-the-var-and-let-keywords.chinese.md | 6 +- .../es6/import-a-default-export.chinese.md | 2 +- ...te-an-array-declared-with-const.chinese.md | 8 +- .../es6/prevent-object-mutation.chinese.md | 8 +- ...t-parameters-for-your-functions.chinese.md | 6 +- ...o-import-everything-from-a-file.chinese.md | 2 +- ...ite-concise-anonymous-functions.chinese.md | 10 +- ...o-define-a-constructor-function.chinese.md | 8 +- ...to-assign-variables-from-arrays.chinese.md | 6 +- ...tor-to-evaluate-arrays-in-place.chinese.md | 6 +- ...arrow-functions-with-parameters.chinese.md | 10 +- ...-declarative-functions-with-es6.chinese.md | 8 +- ...eclarations-using-simple-fields.chinese.md | 4 +- ...ay-using-concat-instead-of-push.chinese.md | 10 +- ...to-convert-strings-to-url-slugs.chinese.md | 12 +- ...ts-using-functional-programming.chinese.md | 4 +- ...-a-string-using-the-join-method.chinese.md | 12 +- ...-arrays-using-the-concat-method.chinese.md | 8 +- .../implement-map-on-a-prototype.chinese.md | 4 +- ...he-filter-method-on-a-prototype.chinese.md | 4 +- ...urrying-and-partial-application.chinese.md | 8 +- ...rn-about-functional-programming.chinese.md | 4 +- ...ternal-dependence-in-a-function.chinese.md | 6 +- ...obal-variables-out-of-functions.chinese.md | 8 +- ...y-using-slice-instead-of-splice.chinese.md | 8 +- ...out-changing-the-original-array.chinese.md | 8 +- ...an-array-using-the-slice-method.chinese.md | 10 +- ...betically-using-the-sort-method.chinese.md | 8 +- ...an-array-using-the-split-method.chinese.md | 8 +- ...ctional-programming-terminology.chinese.md | 8 +- ...azards-of-using-imperative-code.chinese.md | 2 +- ...nt-in-an-array-meets-a-criteria.chinese.md | 8 +- ...d-to-extract-data-from-an-array.chinese.md | 8 +- ...d-to-extract-data-from-an-array.chinese.md | 8 +- ...nts-in-an-array-meet-a-criteria.chinese.md | 8 +- .../arguments-optional.chinese.md | 10 +- .../binary-agents.chinese.md | 4 +- .../convert-html-entities.chinese.md | 14 +- .../diff-two-arrays.chinese.md | 30 ++--- .../dna-pairing.chinese.md | 6 +- .../drop-it.chinese.md | 12 +- .../everything-be-true.chinese.md | 18 +-- .../make-a-person.chinese.md | 24 ++-- .../map-the-debris.chinese.md | 4 +- .../missing-letters.chinese.md | 10 +- .../pig-latin.chinese.md | 14 +- .../search-and-replace.chinese.md | 10 +- .../seek-and-destroy.chinese.md | 12 +- .../smallest-common-multiple.chinese.md | 12 +- .../sorted-union.chinese.md | 6 +- .../spinal-tap-case.chinese.md | 10 +- .../steamroller.chinese.md | 8 +- .../sum-all-numbers-in-a-range.chinese.md | 10 +- .../sum-all-odd-fibonacci-numbers.chinese.md | 12 +- .../sum-all-primes.chinese.md | 6 +- .../wherefore-art-thou.chinese.md | 12 +- .../caesars-cipher.chinese.md | 8 +- .../cash-register.chinese.md | 12 +- .../palindrome-checker.chinese.md | 26 ++-- .../roman-numeral-converter.chinese.md | 52 ++++---- .../telephone-number-validator.chinese.md | 54 ++++---- .../add-methods-after-inheritance.chinese.md | 10 +- ...e-the-prototype-to-a-new-object.chinese.md | 8 +- ...reate-a-basic-javascript-object.chinese.md | 6 +- .../create-a-method-on-an-object.chinese.md | 4 +- .../define-a-constructor-function.chinese.md | 6 +- ...nstructors-to-receive-arguments.chinese.md | 8 +- .../iterate-over-all-properties.chinese.md | 6 +- ...-reusable-with-the-this-keyword.chinese.md | 4 +- .../override-inherited-methods.chinese.md | 6 +- ...rty-when-changing-the-prototype.chinese.md | 2 +- ...-inherited-constructor-property.chinese.md | 8 +- ...pe-to-an-instance-of-the-parent.chinese.md | 2 +- .../understand-own-properties.chinese.md | 4 +- ...rstand-the-constructor-property.chinese.md | 6 +- ...nvoked-function-expression-iife.chinese.md | 4 +- .../understand-the-prototype-chain.chinese.md | 2 +- ...an-objects-prototype-comes-from.chinese.md | 2 +- ...a-constructor-to-create-objects.chinese.md | 4 +- ...avior-between-unrelated-objects.chinese.md | 6 +- .../use-an-iife-to-create-a-module.chinese.md | 6 +- ...ess-the-properties-of-an-object.chinese.md | 4 +- ...nce-so-you-dont-repeat-yourself.chinese.md | 6 +- ...erties-to-reduce-duplicate-code.chinese.md | 6 +- ...cts-constructor-with-instanceof.chinese.md | 4 +- .../check-for-all-or-none.chinese.md | 8 +- .../extract-matches.chinese.md | 6 +- .../find-more-than-the-first-match.chinese.md | 8 +- ...one-or-more-criminals-in-a-hunt.chinese.md | 14 +- .../ignore-case-while-matching.chinese.md | 20 +-- ...ng-with-different-possibilities.chinese.md | 14 +- .../match-all-letters-and-numbers.chinese.md | 12 +- .../match-all-non-numbers.chinese.md | 16 +-- .../match-all-numbers.chinese.md | 16 +-- ...h-anything-with-wildcard-period.chinese.md | 20 +-- ...match-beginning-string-patterns.chinese.md | 8 +- ...rs-that-occur-one-or-more-times.chinese.md | 6 +- ...s-that-occur-zero-or-more-times.chinese.md | 10 +- .../match-ending-string-patterns.chinese.md | 6 +- ...rything-but-letters-and-numbers.chinese.md | 12 +- .../match-letters-of-the-alphabet.chinese.md | 6 +- .../match-literal-strings.chinese.md | 6 +- ...match-non-whitespace-characters.chinese.md | 10 +- ...ers-and-letters-of-the-alphabet.chinese.md | 6 +- ...ter-with-multiple-possibilities.chinese.md | 10 +- ...single-characters-not-specified.chinese.md | 6 +- .../match-whitespace.chinese.md | 12 +- ...positive-and-negative-lookahead.chinese.md | 16 +-- ...e-whitespace-from-start-and-end.chinese.md | 6 +- ...e-patterns-using-capture-groups.chinese.md | 20 +-- ...specify-exact-number-of-matches.chinese.md | 12 +- ...nly-the-lower-number-of-matches.chinese.md | 14 +- ...per-and-lower-number-of-matches.chinese.md | 14 +- ...re-groups-to-search-and-replace.chinese.md | 6 +- .../using-the-test-method.chinese.md | 4 +- ...nts-within-your-bootstrap-wells.chinese.md | 6 +- ...ome-icons-to-all-of-our-buttons.chinese.md | 6 +- ...nt-awesome-icons-to-our-buttons.chinese.md | 8 +- ...ttributes-to-bootstrap-elements.chinese.md | 4 +- ...-default-bootstrap-button-style.chinese.md | 4 +- ...-optional-actions-with-btn-info.chinese.md | 8 +- .../center-text-with-bootstrap.chinese.md | 4 +- ...-block-element-bootstrap-button.chinese.md | 6 +- .../create-a-bootstrap-button.chinese.md | 6 +- .../create-a-bootstrap-headline.chinese.md | 10 +- .../create-a-bootstrap-row.chinese.md | 8 +- ...to-target-with-jquery-selectors.chinese.md | 2 +- .../create-a-custom-heading.chinese.md | 8 +- .../create-bootstrap-wells.chinese.md | 6 +- .../ditch-custom-css-for-bootstrap.chinese.md | 10 +- .../give-each-element-a-unique-id.chinese.md | 12 +- ...a-bootstrap-container-fluid-div.chinese.md | 6 +- .../label-bootstrap-buttons.chinese.md | 12 +- .../label-bootstrap-wells.chinese.md | 8 +- ...nts-responsively-with-bootstrap.chinese.md | 8 +- .../make-images-mobile-responsive.chinese.md | 10 +- .../responsively-style-checkboxes.chinese.md | 6 +- ...esponsively-style-radio-buttons.chinese.md | 6 +- .../split-your-bootstrap-row.chinese.md | 4 +- ...le-text-inputs-as-form-controls.chinese.md | 8 +- ...-bootstrap-button-color-rainbow.chinese.md | 6 +- ...-span-to-target-inline-elements.chinese.md | 8 +- .../use-comments-to-clarify-code.chinese.md | 8 +- ...with-bootstrap-fluid-containers.chinese.md | 6 +- ...id-to-put-elements-side-by-side.chinese.md | 8 +- ...angerous-action-with-btn-danger.chinese.md | 8 +- ...-inside-an-element-using-jquery.chinese.md | 10 +- ...-css-of-an-element-using-jquery.chinese.md | 4 +- .../clone-an-element-using-jquery.chinese.md | 6 +- .../delete-your-jquery-functions.chinese.md | 10 +- ...disable-an-element-using-jquery.chinese.md | 6 +- ...pt-tags-and-document-ready-work.chinese.md | 6 +- .../remove-an-element-using-jquery.chinese.md | 4 +- ...ses-from-an-element-with-jquery.chinese.md | 6 +- ...hild-of-an-element-using-jquery.chinese.md | 8 +- ...-elements-by-class-using-jquery.chinese.md | 4 +- ...get-elements-by-id-using-jquery.chinese.md | 6 +- ...rget-even-elements-using-jquery.chinese.md | 6 +- ...nts-with-selectors-using-jquery.chinese.md | 6 +- ...dren-of-an-element-using-jquery.chinese.md | 6 +- ...rent-of-an-element-using-jquery.chinese.md | 8 +- ...-with-multiple-jquery-selectors.chinese.md | 12 +- ...to-to-move-elements-with-jquery.chinese.md | 6 +- ...query-to-modify-the-entire-page.chinese.md | 2 +- .../connect-redux-to-react.chinese.md | 6 +- ...nnect-redux-to-the-messages-app.chinese.md | 10 +- .../extract-local-state-into-redux.chinese.md | 18 +-- .../extract-state-logic-to-redux.chinese.md | 12 +- ...etting-started-with-react-redux.chinese.md | 6 +- .../manage-state-locally-first.chinese.md | 2 +- .../map-dispatch-to-props.chinese.md | 8 +- .../map-state-to-props.chinese.md | 8 +- .../moving-forward-from-here.chinese.md | 2 +- ...vider-to-connect-redux-to-react.chinese.md | 8 +- .../access-props-using-this.props.chinese.md | 10 +- .../react/add-event-listeners.chinese.md | 8 +- .../add-inline-styles-in-react.chinese.md | 12 +- .../bind-this-to-a-class-method.chinese.md | 6 +- ...onally-based-on-component-state.chinese.md | 10 +- .../react/compose-react-components.chinese.md | 8 +- .../create-a-complex-jsx-element.chinese.md | 10 +- ...te-a-component-with-composition.chinese.md | 6 +- .../react/create-a-controlled-form.chinese.md | 10 +- .../create-a-controlled-input.chinese.md | 6 +- .../react/create-a-react-component.chinese.md | 6 +- .../create-a-simple-jsx-element.chinese.md | 4 +- .../create-a-stateful-component.chinese.md | 8 +- ...-stateless-functional-component.chinese.md | 6 +- .../define-an-html-class-in-jsx.chinese.md | 4 +- ...elements-a-unique-key-attribute.chinese.md | 2 +- .../introducing-inline-styles.chinese.md | 8 +- ...arn-about-self-closing-jsx-tags.chinese.md | 6 +- ...ders-with-shouldcomponentupdate.chinese.md | 8 +- .../react/override-default-props.chinese.md | 6 +- .../react/pass-a-callback-as-props.chinese.md | 10 +- .../react/pass-an-array-as-props.chinese.md | 14 +- ...te-as-props-to-child-components.chinese.md | 6 +- ...er-a-class-component-to-the-dom.chinese.md | 8 +- ...render-conditionally-from-props.chinese.md | 14 +- ...render-html-elements-to-the-dom.chinese.md | 8 +- ...-the-server-with-rendertostring.chinese.md | 2 +- ...-the-user-interface-another-way.chinese.md | 8 +- ...der-state-in-the-user-interface.chinese.md | 6 +- ...ender-with-an-if-else-condition.chinese.md | 8 +- ...stateless-functional-components.chinese.md | 10 +- .../set-state-with-this.setstate.chinese.md | 8 +- ...-for-a-more-concise-conditional.chinese.md | 8 +- ...ssion-for-conditional-rendering.chinese.md | 14 +- ...vascript-in-react-render-method.chinese.md | 12 +- ...-to-dynamically-filter-an-array.chinese.md | 10 +- .../react/use-default-props.chinese.md | 4 +- ...-to-define-the-props-you-expect.chinese.md | 6 +- ...act-to-render-nested-components.chinese.md | 8 +- ...ecycle-method-componentdidmount.chinese.md | 6 +- ...cycle-method-componentwillmount.chinese.md | 4 +- ...-a-react-component-from-scratch.chinese.md | 6 +- .../react/write-a-simple-counter.chinese.md | 10 +- .../combine-multiple-reducers.chinese.md | 8 +- ...py-an-object-with-object.assign.chinese.md | 8 +- .../redux/create-a-redux-store.chinese.md | 4 +- .../redux/define-a-redux-action.chinese.md | 4 +- .../redux/define-an-action-creator.chinese.md | 6 +- .../redux/dispatch-an-action-event.chinese.md | 6 +- .../get-state-from-the-redux-store.chinese.md | 4 +- .../handle-an-action-in-the-store.chinese.md | 8 +- .../redux/never-mutate-state.chinese.md | 6 +- .../register-a-store-listener.chinese.md | 6 +- .../remove-an-item-from-an-array.chinese.md | 6 +- .../send-action-data-to-the-store.chinese.md | 4 +- ...ment-to-handle-multiple-actions.chinese.md | 12 +- .../use-const-for-action-types.chinese.md | 16 +-- ...-to-handle-asynchronous-actions.chinese.md | 10 +- ...e-the-spread-operator-on-arrays.chinese.md | 8 +- .../write-a-counter-with-redux.chinese.md | 12 +- ...create-reusable-css-with-mixins.chinese.md | 12 +- ...f-css-styles-to-another-element.chinese.md | 4 +- .../sass/nest-css-with-sass.chinese.md | 2 +- ...to-smaller-chunks-with-partials.chinese.md | 2 +- .../store-data-with-sass-variables.chinese.md | 8 +- ...ach-to-map-over-items-in-a-list.chinese.md | 8 +- .../use-for-to-create-a-sass-loop.chinese.md | 12 +- ...lse-to-add-logic-to-your-styles.chinese.md | 10 +- ...-a-hover-effect-to-a-d3-element.chinese.md | 2 +- .../add-a-tooltip-to-a-d3-element.chinese.md | 20 +-- ...tributes-to-the-circle-elements.chinese.md | 22 +-- .../add-axes-to-a-visualization.chinese.md | 6 +- .../add-classes-with-d3.chinese.md | 4 +- .../add-document-elements-with-d3.chinese.md | 12 +- .../add-inline-styling-to-elements.chinese.md | 4 +- .../add-labels-to-d3-elements.chinese.md | 18 +-- ...-labels-to-scatter-plot-circles.chinese.md | 22 +-- .../change-styles-based-on-data.chinese.md | 18 +-- ...nge-the-color-of-an-svg-element.chinese.md | 2 +- ...the-presentation-of-a-bar-chart.chinese.md | 18 +-- ...-for-each-data-point-in-the-set.chinese.md | 8 +- .../create-a-linear-scale-with-d3.chinese.md | 6 +- ...-a-scatterplot-with-svg-circles.chinese.md | 2 +- .../display-shapes-with-svg.chinese.md | 10 +- ...y-change-the-height-of-each-bar.chinese.md | 18 +-- ...et-the-coordinates-for-each-bar.chinese.md | 18 +-- .../invert-svg-elements.chinese.md | 26 ++-- .../learn-about-svg-in-d3.chinese.md | 6 +- ...ect-a-group-of-elements-with-d3.chinese.md | 6 +- ...a-domain-and-a-range-on-a-scale.chinese.md | 10 +- .../style-d3-labels.chinese.md | 4 +- ...eight-of-an-element-dynamically.chinese.md | 18 +-- ...defined-scale-to-place-elements.chinese.md | 44 +++--- .../use-dynamic-scales.chinese.md | 6 +- ...and-maximum-values-in-a-dataset.chinese.md | 4 +- .../work-with-data-in-d3.chinese.md | 8 +- .../work-with-dynamic-data-in-d3.chinese.md | 18 +-- ...ccess-the-json-data-from-an-api.chinese.md | 2 +- .../change-text-with-click-events.chinese.md | 2 +- .../convert-json-data-to-html.chinese.md | 6 +- ...to-find-a-users-gps-coordinates.chinese.md | 8 +- ...avascript-xmlhttprequest-method.chinese.md | 12 +- ...ript-using-the-onclick-property.chinese.md | 4 +- ...avascript-xmlhttprequest-method.chinese.md | 12 +- ...r-json-to-get-the-data-you-need.chinese.md | 2 +- ...render-images-from-data-sources.chinese.md | 2 +- ...derstanding-semantic-versioning.chinese.md | 2 +- ...-by-running-find-edit-then-save.chinese.md | 2 +- ...d-to-search-your-database-by-id.chinese.md | 2 +- .../announce-new-users.chinese.md | 4 +- .../authentication-strategies.chinese.md | 4 +- .../authentication-with-socket.io.chinese.md | 6 +- ...an-up-your-project-with-modules.chinese.md | 2 +- .../communicate-by-emitting.chinese.md | 6 +- .../create-new-middleware.chinese.md | 4 +- .../handle-a-disconnect.chinese.md | 4 +- .../hashing-your-passwords.chinese.md | 4 +- .../how-to-put-a-profile-together.chinese.md | 2 +- .../how-to-use-passport-strategies.chinese.md | 4 +- ...erialization-of-a-passport-user.chinese.md | 6 +- ...ion-of-social-authentication-ii.chinese.md | 6 +- ...on-of-social-authentication-iii.chinese.md | 2 +- ...tation-of-social-authentication.chinese.md | 4 +- .../logging-a-user-out.chinese.md | 4 +- .../registration-of-new-users.chinese.md | 10 +- .../send-and-display-chat-messages.chinese.md | 4 +- .../serialization-of-a-user-object.chinese.md | 8 +- .../set-up-a-template-engine.chinese.md | 6 +- .../set-up-passport.chinese.md | 8 +- .../set-up-the-environment.chinese.md | 8 +- .../use-a-template-engines-powers.chinese.md | 2 +- ...via-https-only-with-helmet.hsts.chinese.md | 4 +- ...e-mime-type-with-helmet.nosniff.chinese.md | 2 +- ...ide-caching-with-helmet.nocache.chinese.md | 2 +- ...-with-helmet.dnsprefetchcontrol.chinese.md | 2 +- ...ompare-passwords-asynchronously.chinese.md | 2 +- ...compare-passwords-synchronously.chinese.md | 2 +- ...tion-using-helmet.hidepoweredby.chinese.md | 2 +- .../install-and-require-helmet.chinese.md | 2 +- ...kjacking-with-helmet.frameguard.chinese.md | 4 +- ...s-attacks-with-helmet.xssfilter.chinese.md | 2 +- ...usted-html-with-helmet.ienoopen.chinese.md | 2 +- ...th-helmet.contentsecuritypolicy.chinese.md | 12 +- .../understand-bcrypt-hashes.chinese.md | 4 +- ...th-.deepequal-and-.notdeepequal.chinese.md | 6 +- ...-the-properties-of-two-elements.chinese.md | 10 +- ...-how-javascript-assertions-work.chinese.md | 6 +- ...sing-chai-http-iii---put-method.chinese.md | 10 +- ...using-chai-http-iv---put-method.chinese.md | 10 +- ...pi-endpoints-using-chai-http-ii.chinese.md | 6 +- ...n-api-endpoints-using-chai-http.chinese.md | 6 +- ...sts-using-a-headless-browser-ii.chinese.md | 10 +- ...-tests-using-a-headless-browser.chinese.md | 10 +- .../test-for-truthiness.chinese.md | 8 +- ...f-a-string-contains-a-substring.chinese.md | 6 +- ...e-falls-within-a-specific-range.chinese.md | 6 +- .../test-if-a-value-is-a-string.chinese.md | 8 +- .../test-if-a-value-is-an-array.chinese.md | 6 +- ...-a-specific-data-structure-type.chinese.md | 12 +- ...variable-or-function-is-defined.chinese.md | 8 +- ...st-if-an-array-contains-an-item.chinese.md | 6 +- ...est-if-an-object-has-a-property.chinese.md | 8 +- ...is-an-instance-of-a-constructor.chinese.md | 10 +- ...or-at-least-as-large-as-another.chinese.md | 10 +- ...-assert.isok-and-assert.isnotok.chinese.md | 8 +- ...ar-expressions-to-test-a-string.chinese.md | 6 +- ...ouble-equals-to-assert-equality.chinese.md | 10 +- ...quals-to-assert-strict-equality.chinese.md | 10 +- .../find-the-symmetric-difference.chinese.md | 28 ++-- .../implement-bubble-sort.chinese.md | 8 +- .../implement-insertion-sort.chinese.md | 8 +- .../implement-merge-sort.chinese.md | 8 +- .../implement-quick-sort.chinese.md | 8 +- .../implement-selection-sort.chinese.md | 8 +- .../algorithms/inventory-update.chinese.md | 22 +-- .../algorithms/no-repeats-please.chinese.md | 20 +-- .../algorithms/pairwise.chinese.md | 10 +- ...element-to-a-binary-search-tree.chinese.md | 8 +- ...specific-index-in-a-linked-list.chinese.md | 6 +- .../data-structures/adjacency-list.chinese.md | 8 +- .../adjacency-matrix.chinese.md | 10 +- .../breadth-first-search.chinese.md | 8 +- ...present-in-a-binary-search-tree.chinese.md | 8 +- .../create-a-circular-queue.chinese.md | 10 +- .../create-a-doubly-linked-list.chinese.md | 16 +-- .../create-a-hash-table.chinese.md | 16 +-- .../create-a-linked-list-class.chinese.md | 8 +- .../create-a-map-data-structure.chinese.md | 14 +- .../create-a-priority-queue-class.chinese.md | 14 +- .../create-a-queue-class.chinese.md | 18 +-- .../create-a-stack-class.chinese.md | 18 +-- .../create-a-trie-search-tree.chinese.md | 10 +- .../create-an-es6-javascript-map.chinese.md | 4 +- .../create-and-add-to-sets-in-es6.chinese.md | 2 +- ...af-node-in-a-binary-search-tree.chinese.md | 10 +- ...e-child-in-a-binary-search-tree.chinese.md | 14 +- ...hildren-in-a-binary-search-tree.chinese.md | 18 +-- .../depth-first-search.chinese.md | 16 +-- ...-height-of-a-binary-search-tree.chinese.md | 16 +-- ...m-value-in-a-binary-search-tree.chinese.md | 12 +- ...ement-heap-sort-with-a-min-heap.chinese.md | 10 +- .../incidence-matrix.chinese.md | 10 +- ...sert-an-element-into-a-max-heap.chinese.md | 8 +- .../invert-a-binary-tree.chinese.md | 8 +- .../learn-how-a-stack-works.chinese.md | 14 +- ...-difference-on-two-sets-of-data.chinese.md | 4 +- ...ubset-check-on-two-sets-of-data.chinese.md | 18 +-- .../perform-a-union-on-two-sets.chinese.md | 4 +- ...ntersection-on-two-sets-of-data.chinese.md | 4 +- ...move-an-element-from-a-max-heap.chinese.md | 10 +- .../remove-items-from-a-set-in-es6.chinese.md | 2 +- .../reverse-a-doubly-linked-list.chinese.md | 12 +- .../search-within-a-linked-list.chinese.md | 10 +- .../data-structures/typed-arrays.chinese.md | 6 +- ...se-.has-and-.size-on-an-es6-set.chinese.md | 2 +- ...-search-in-a-binary-search-tree.chinese.md | 14 +- ...-search-in-a-binary-search-tree.chinese.md | 20 +-- ...d-notes-for-es5-set-integration.chinese.md | 2 +- ...ork-with-nodes-in-a-linked-list.chinese.md | 4 +- .../problem-1-multiples-of-3-and-5.chinese.md | 8 +- .../problem-10-summation-of-primes.chinese.md | 8 +- ...roblem-100-arranged-probability.chinese.md | 2 +- .../problem-101-optimum-polynomial.chinese.md | 2 +- ...roblem-102-triangle-containment.chinese.md | 2 +- ...103-special-subset-sums-optimum.chinese.md | 2 +- ...m-104-pandigital-fibonacci-ends.chinese.md | 2 +- ...105-special-subset-sums-testing.chinese.md | 2 +- ...pecial-subset-sums-meta-testing.chinese.md | 2 +- .../problem-107-minimal-network.chinese.md | 2 +- ...m-108-diophantine-reciprocals-i.chinese.md | 2 +- .../problem-109-darts.chinese.md | 2 +- ...em-11-largest-product-in-a-grid.chinese.md | 4 +- ...-110-diophantine-reciprocals-ii.chinese.md | 2 +- .../problem-111-primes-with-runs.chinese.md | 2 +- .../problem-112-bouncy-numbers.chinese.md | 2 +- .../problem-113-non-bouncy-numbers.chinese.md | 2 +- ...4-counting-block-combinations-i.chinese.md | 2 +- ...-counting-block-combinations-ii.chinese.md | 2 +- ...lem-116-red-green-or-blue-tiles.chinese.md | 2 +- ...em-117-red-green-and-blue-tiles.chinese.md | 2 +- ...oblem-118-pandigital-prime-sets.chinese.md | 5 +- .../problem-119-digit-power-sum.chinese.md | 2 +- ...hly-divisible-triangular-number.chinese.md | 10 +- .../problem-120-square-remainders.chinese.md | 2 +- ...roblem-121-disc-game-prize-fund.chinese.md | 2 +- ...em-122-efficient-exponentiation.chinese.md | 2 +- ...lem-123-prime-square-remainders.chinese.md | 2 +- .../problem-124-ordered-radicals.chinese.md | 2 +- .../problem-125-palindromic-sums.chinese.md | 2 +- .../problem-126-cuboid-layers.chinese.md | 2 +- .../problem-127-abc-hits.chinese.md | 2 +- ...-128-hexagonal-tile-differences.chinese.md | 2 +- ...roblem-129-repunit-divisibility.chinese.md | 2 +- .../problem-13-large-sum.chinese.md | 4 +- ...tes-with-prime-repunit-property.chinese.md | 2 +- ...blem-131-prime-cube-partnership.chinese.md | 2 +- ...oblem-132-large-repunit-factors.chinese.md | 2 +- .../problem-133-repunit-nonfactors.chinese.md | 2 +- ...oblem-134-prime-pair-connection.chinese.md | 2 +- .../problem-135-same-differences.chinese.md | 2 +- ...roblem-136-singleton-difference.chinese.md | 2 +- ...em-137-fibonacci-golden-nuggets.chinese.md | 2 +- ...138-special-isosceles-triangles.chinese.md | 2 +- .../problem-139-pythagorean-tiles.chinese.md | 2 +- ...lem-14-longest-collatz-sequence.chinese.md | 10 +- ...dified-fibonacci-golden-nuggets.chinese.md | 2 +- ...numbers-n-which-are-also-square.chinese.md | 2 +- ...m-142-perfect-square-collection.chinese.md | 2 +- ...-torricelli-point-of-a-triangle.chinese.md | 2 +- ...ple-reflections-of-a-laser-beam.chinese.md | 2 +- ...ers-are-there-below-one-billion.chinese.md | 2 +- ...6-investigating-a-prime-pattern.chinese.md | 8 +- ...ctangles-in-cross-hatched-grids.chinese.md | 5 +- ...-148-exploring-pascals-triangle.chinese.md | 2 +- ...g-for-a-maximum-sum-subsequence.chinese.md | 22 ++- .../problem-15-lattice-paths.chinese.md | 6 +- ...sub-triangle-having-minimum-sum.chinese.md | 2 +- ...sizes-an-expected-value-problem.chinese.md | 9 +- ...alf-as-a-sum-of-inverse-squares.chinese.md | 15 ++- ...investigating-gaussian-integers.chinese.md | 2 +- ...m-154-exploring-pascals-pyramid.chinese.md | 6 +- ...155-counting-capacitor-circuits.chinese.md | 4 +- .../problem-156-counting-digits.chinese.md | 6 +- ...olving-the-diophantine-equation.chinese.md | 32 ++++- ...after-its-neighbour-to-the-left.chinese.md | 2 +- ...tal-root-sums-of-factorisations.chinese.md | 2 +- .../problem-16-power-digit-sum.chinese.md | 11 +- ...m-160-factorial-trailing-digits.chinese.md | 2 +- .../problem-161-triominoes.chinese.md | 5 +- ...problem-162-hexadecimal-numbers.chinese.md | 4 +- ...lem-163-cross-hatched-triangles.chinese.md | 4 +- ...-sum-greater-than-a-given-value.chinese.md | 2 +- .../problem-165-intersections.chinese.md | 2 +- .../problem-166-criss-cross.chinese.md | 2 +- ...67-investigating-ulam-sequences.chinese.md | 2 +- .../problem-168-number-rotations.chinese.md | 2 +- ...pressed-as-a-sum-of-powers-of-2.chinese.md | 2 +- ...problem-17-number-letter-counts.chinese.md | 6 +- ...ormed-by-concatenating-products.chinese.md | 2 +- ...uares-of-the-digits-is-a-square.chinese.md | 2 +- ...umbers-with-few-repeated-digits.chinese.md | 2 +- ...ow-square-laminae-can-be-formed.chinese.md | 2 +- ...three-...-distinct-arrangements.chinese.md | 2 +- ...pressed-as-a-sum-of-powers-of-2.chinese.md | 2 +- ...triangles-that-share-a-cathetus.chinese.md | 2 +- ...7-integer-angled-quadrilaterals.chinese.md | 2 +- .../problem-178-step-numbers.chinese.md | 2 +- ...9-consecutive-positive-divisors.chinese.md | 2 +- .../problem-18-maximum-path-sum-i.chinese.md | 4 +- ...f-a-function-of-three-variables.chinese.md | 2 +- ...ifferent-colours-can-be-grouped.chinese.md | 2 +- ...em-183-maximum-product-of-parts.chinese.md | 2 +- ...triangles-containing-the-origin.chinese.md | 2 +- .../problem-185-number-mind.chinese.md | 2 +- ...-186-connectedness-of-a-network.chinese.md | 2 +- .../problem-187-semiprimes.chinese.md | 2 +- ...hyperexponentiation-of-a-number.chinese.md | 2 +- ...tri-colouring-a-triangular-grid.chinese.md | 2 +- .../problem-19-counting-sundays.chinese.md | 6 +- ...0-maximising-a-weighted-product.chinese.md | 2 +- .../problem-191-prize-strings.chinese.md | 2 +- ...problem-192-best-approximations.chinese.md | 2 +- .../problem-193-squarefree-numbers.chinese.md | 2 +- ...lem-194-coloured-configurations.chinese.md | 2 +- ...es-with-one-angle-of-60-degrees.chinese.md | 2 +- .../problem-196-prime-triplets.chinese.md | 2 +- ...-a-recursively-defined-sequence.chinese.md | 2 +- .../problem-198-ambiguous-numbers.chinese.md | 2 +- ...em-199-iterative-circle-packing.chinese.md | 2 +- .../problem-20-factorial-digit-sum.chinese.md | 10 +- ...g-the-contiguous-sub-string-200.chinese.md | 2 +- ...m-201-subsets-with-a-unique-sum.chinese.md | 2 +- .../problem-202-laserbeam.chinese.md | 2 +- ...quarefree-binomial-coefficients.chinese.md | 2 +- ...204-generalised-hamming-numbers.chinese.md | 13 +- .../problem-205-dice-game.chinese.md | 2 +- .../problem-206-concealed-square.chinese.md | 2 +- ...207-integer-partition-equations.chinese.md | 2 +- .../problem-208-robot-walks.chinese.md | 2 +- .../problem-209-circular-logic.chinese.md | 2 +- .../problem-21-amicable-numbers.chinese.md | 8 +- ...lem-210-obtuse-angled-triangles.chinese.md | 2 +- .../problem-211-divisor-square-sum.chinese.md | 2 +- ...-212-combined-volume-of-cuboids.chinese.md | 2 +- .../problem-213-flea-circus.chinese.md | 2 +- .../problem-214-totient-chains.chinese.md | 2 +- .../problem-215-crack-free-walls.chinese.md | 2 +- ...ty-of-numbers-of-the-form-2n2-1.chinese.md | 2 +- .../problem-217-balanced-numbers.chinese.md | 2 +- ...-perfect-right-angled-triangles.chinese.md | 2 +- .../problem-219-skew-cost-coding.chinese.md | 2 +- .../problem-22-names-scores.chinese.md | 6 +- .../problem-220-heighway-dragon.chinese.md | 2 +- ...roblem-221-alexandrian-integers.chinese.md | 2 +- .../problem-222-sphere-packing.chinese.md | 2 +- ...almost-right-angled-triangles-i.chinese.md | 2 +- ...lmost-right-angled-triangles-ii.chinese.md | 2 +- ...lem-225-tribonacci-non-divisors.chinese.md | 2 +- ...oblem-226-a-scoop-of-blancmange.chinese.md | 2 +- .../problem-227-the-chase.chinese.md | 2 +- .../problem-228-minkowski-sums.chinese.md | 2 +- ...r-representations-using-squares.chinese.md | 2 +- .../problem-23-non-abundant-sums.chinese.md | 8 +- .../problem-230-fibonacci-words.chinese.md | 2 +- ...sation-of-binomial-coefficients.chinese.md | 2 +- .../problem-232-the-race.chinese.md | 2 +- ...-233-lattice-points-on-a-circle.chinese.md | 2 +- ...oblem-234-semidivisible-numbers.chinese.md | 2 +- ...n-arithmetic-geometric-sequence.chinese.md | 2 +- .../problem-236-luxury-hampers.chinese.md | 2 +- ...-tours-on-a-4-x-n-playing-board.chinese.md | 2 +- ...roblem-238-infinite-string-tour.chinese.md | 2 +- ...m-239-twenty-two-foolish-primes.chinese.md | 2 +- ...m-24-lexicographic-permutations.chinese.md | 8 +- .../problem-240-top-dice.chinese.md | 2 +- ...roblem-241-perfection-quotients.chinese.md | 2 +- .../problem-242-odd-triplets.chinese.md | 2 +- .../problem-243-resilience.chinese.md | 2 +- .../problem-244-sliders.chinese.md | 2 +- .../problem-245-coresilience.chinese.md | 2 +- ...blem-246-tangents-to-an-ellipse.chinese.md | 2 +- ...m-247-squares-under-a-hyperbola.chinese.md | 2 +- ...lers-totient-function-equals-13.chinese.md | 2 +- .../problem-249-prime-subset-sums.chinese.md | 2 +- ...-25-1000-digit-fibonacci-number.chinese.md | 8 +- .../problem-250-250250.chinese.md | 2 +- .../problem-251-cardano-triplets.chinese.md | 2 +- .../problem-252-convex-holes.chinese.md | 2 +- .../problem-253-tidying-up.chinese.md | 2 +- ...em-254-sums-of-digit-factorials.chinese.md | 2 +- ...roblem-255-rounded-square-roots.chinese.md | 2 +- .../problem-256-tatami-free-rooms.chinese.md | 2 +- .../problem-257-angular-bisectors.chinese.md | 2 +- ...258-a-lagged-fibonacci-sequence.chinese.md | 2 +- .../problem-259-reachable-numbers.chinese.md | 2 +- .../problem-26-reciprocal-cycles.chinese.md | 8 +- .../problem-260-stone-game.chinese.md | 2 +- ...problem-261-pivotal-square-sums.chinese.md | 2 +- .../problem-262-mountain-range.chinese.md | 2 +- ...63-an-engineers-dream-come-true.chinese.md | 2 +- .../problem-264-triangle-centres.chinese.md | 2 +- .../problem-265-binary-circles.chinese.md | 2 +- .../problem-266-pseudo-square-root.chinese.md | 2 +- .../problem-267-billionaire.chinese.md | 2 +- ...nct-prime-factors-less-than-100.chinese.md | 2 +- ...-with-at-least-one-integer-root.chinese.md | 2 +- .../problem-27-quadratic-primes.chinese.md | 8 +- .../problem-270-cutting-squares.chinese.md | 2 +- ...roblem-271-modular-cubes-part-1.chinese.md | 2 +- ...roblem-272-modular-cubes-part-2.chinese.md | 2 +- .../problem-273-sum-of-squares.chinese.md | 2 +- ...em-274-divisibility-multipliers.chinese.md | 2 +- ...problem-275-balanced-sculptures.chinese.md | 2 +- ...problem-276-primitive-triangles.chinese.md | 2 +- ...277-a-modified-collatz-sequence.chinese.md | 2 +- ...near-combinations-of-semiprimes.chinese.md | 2 +- ...ral-sides-and-an-integral-angle.chinese.md | 2 +- ...blem-28-number-spiral-diagonals.chinese.md | 32 +++-- .../problem-280-ant-and-seeds.chinese.md | 18 ++- .../problem-281-pizza-toppings.chinese.md | 21 ++- ...blem-282-the-ackermann-function.chinese.md | 20 ++- ...ea--perimeter-ratio-is-integral.chinese.md | 19 ++- .../problem-284-steady-squares.chinese.md | 20 ++- .../problem-285-pythagorean-odds.chinese.md | 22 ++- ...oblem-286-scoring-probabilities.chinese.md | 18 ++- ...-a-simple-compression-algorithm.chinese.md | 28 +++- ...oblem-288-an-enormous-factorial.chinese.md | 28 +++- .../problem-289-eulerian-cycles.chinese.md | 27 +++- .../problem-29-distinct-powers.chinese.md | 32 +++-- .../problem-290-digital-signature.chinese.md | 15 ++- .../problem-291-panaitopol-primes.chinese.md | 16 ++- ...roblem-292-pythagorean-polygons.chinese.md | 20 ++- ...em-293-pseudo-fortunate-numbers.chinese.md | 25 +++- ...4-sum-of-digits---experience-23.chinese.md | 24 +++- .../problem-295-lenticular-holes.chinese.md | 35 ++++- ...96-angular-bisector-and-tangent.chinese.md | 18 ++- ...m-297-zeckendorf-representation.chinese.md | 23 +++- .../problem-298-selective-amnesia.chinese.md | 87 +++++++++++- ...lem-299-three-similar-triangles.chinese.md | 26 +++- .../problem-3-largest-prime-factor.chinese.md | 34 ++--- .../problem-30-digit-n-powers.chinese.md | 31 +++-- .../problem-300-protein-folding.chinese.md | 30 ++++- .../project-euler/problem-301-nim.chinese.md | 28 +++- ...lem-302-strong-achilles-numbers.chinese.md | 31 ++++- ...303-multiples-with-small-digits.chinese.md | 17 ++- .../problem-304-primonacci.chinese.md | 28 +++- .../problem-305-reflexive-position.chinese.md | 24 +++- .../problem-306-paper-strip-game.chinese.md | 30 ++++- .../problem-307-chip-defects.chinese.md | 20 ++- ...zing-prime-generating-automaton.chinese.md | 51 ++++++- .../problem-309-integer-ladders.chinese.md | 23 +++- .../problem-31-coin-sums.chinese.md | 29 ++-- .../problem-310-nim-square.chinese.md | 19 ++- ...iclinic-integral-quadrilaterals.chinese.md | 27 +++- ...yclic-paths-on-sierpiski-graphs.chinese.md | 31 ++++- .../problem-313-sliding-game.chinese.md | 23 +++- ...oblem-314-the-mouse-on-the-moon.chinese.md | 30 ++++- ...problem-315-digital-root-clocks.chinese.md | 59 +++++++- ...6-numbers-in-decimal-expansions.chinese.md | 27 +++- .../problem-317-firecracker.chinese.md | 20 ++- .../problem-318-2011-nines.chinese.md | 39 +++++- .../problem-319-bounded-sequences.chinese.md | 28 +++- .../problem-32-pandigital-products.chinese.md | 23 +++- ...als-divisible-by-a-huge-integer.chinese.md | 21 ++- .../problem-321-swapping-counters.chinese.md | 27 +++- ...al-coefficients-divisible-by-10.chinese.md | 17 ++- ...r-operations-on-random-integers.chinese.md | 20 ++- .../problem-324-building-a-tower.chinese.md | 2 +- .../problem-325-stone-game-ii.chinese.md | 2 +- .../problem-326-modulo-summations.chinese.md | 2 +- .../problem-327-rooms-of-doom.chinese.md | 2 +- .../problem-328-lowest-cost-search.chinese.md | 2 +- .../problem-329-prime-frog.chinese.md | 2 +- ...m-33-digit-cancelling-fractions.chinese.md | 2 +- .../problem-330-eulers-number.chinese.md | 2 +- .../problem-331-cross-flips.chinese.md | 2 +- ...problem-332-spherical-triangles.chinese.md | 2 +- .../problem-333-special-partitions.chinese.md | 2 +- .../problem-334-spilling-the-beans.chinese.md | 2 +- ...problem-335-gathering-the-beans.chinese.md | 2 +- ...roblem-336-maximix-arrangements.chinese.md | 2 +- ...337-totient-stairstep-sequences.chinese.md | 2 +- ...-cutting-rectangular-grid-paper.chinese.md | 2 +- .../problem-339-peredur-fab-efrawg.chinese.md | 2 +- .../problem-34-digit-factorials.chinese.md | 2 +- .../problem-340-crazy-function.chinese.md | 2 +- ...olombs-self-describing-sequence.chinese.md | 2 +- ...e-totient-of-a-square-is-a-cube.chinese.md | 2 +- ...roblem-343-fractional-sequences.chinese.md | 2 +- .../problem-344-silver-dollar-game.chinese.md | 2 +- .../problem-345-matrix-sum.chinese.md | 2 +- .../problem-346-strong-repunits.chinese.md | 2 +- ...integer-divisible-by-two-primes.chinese.md | 2 +- ...-348-sum-of-a-square-and-a-cube.chinese.md | 2 +- .../problem-349-langtons-ant.chinese.md | 2 +- .../problem-35-circular-primes.chinese.md | 12 +- ...greatest-and-the-greatest-least.chinese.md | 2 +- .../problem-351-hexagonal-orchards.chinese.md | 2 +- .../problem-352-blood-tests.chinese.md | 2 +- .../problem-353-risky-moon.chinese.md | 2 +- ...4-distances-in-a-bees-honeycomb.chinese.md | 2 +- ...blem-355-maximal-coprime-subset.chinese.md | 2 +- ...gest-roots-of-cubic-polynomials.chinese.md | 2 +- ...m-357-prime-generating-integers.chinese.md | 2 +- .../problem-358-cyclic-numbers.chinese.md | 37 ++++- .../problem-359-hilberts-new-hotel.chinese.md | 2 +- ...blem-36-double-base-palindromes.chinese.md | 8 +- .../problem-360-scary-sphere.chinese.md | 2 +- ...sequence-of-thue-morse-sequence.chinese.md | 2 +- .../problem-362-squarefree-factors.chinese.md | 2 +- .../problem-363-bzier-curves.chinese.md | 2 +- ...roblem-364-comfortable-distance.chinese.md | 2 +- ...365-a-huge-binomial-coefficient.chinese.md | 2 +- .../problem-366-stone-game-iii.chinese.md | 2 +- .../problem-367-bozo-sort.chinese.md | 2 +- ...oblem-368-a-kempner-like-series.chinese.md | 2 +- .../problem-369-badugi.chinese.md | 2 +- .../problem-37-truncatable-primes.chinese.md | 8 +- ...problem-370-geometric-triangles.chinese.md | 2 +- .../problem-371-licence-plates.chinese.md | 2 +- .../problem-372-pencils-of-rays.chinese.md | 2 +- ...oblem-373-circumscribed-circles.chinese.md | 2 +- ...ximum-integer-partition-product.chinese.md | 2 +- ...lem-375-minimum-of-subsequences.chinese.md | 2 +- ...-376-nontransitive-sets-of-dice.chinese.md | 2 +- ...377-sum-of-digits-experience-13.chinese.md | 2 +- .../problem-378-triangle-triples.chinese.md | 2 +- ...379-least-common-multiple-count.chinese.md | 2 +- ...problem-38-pandigital-multiples.chinese.md | 2 +- .../problem-380-amazing-mazes.chinese.md | 2 +- .../problem-381-prime-k-factorial.chinese.md | 2 +- ...problem-382-generating-polygons.chinese.md | 2 +- ...y-comparison-between-factorials.chinese.md | 2 +- ...blem-384-rudin-shapiro-sequence.chinese.md | 2 +- ...m-385-ellipses-inside-triangles.chinese.md | 2 +- ...-maximum-length-of-an-antichain.chinese.md | 2 +- .../problem-387-harshad-numbers.chinese.md | 2 +- .../problem-388-distinct-lines.chinese.md | 2 +- .../problem-389-platonic-dice.chinese.md | 2 +- ...blem-39-integer-right-triangles.chinese.md | 8 +- ...ational-sides-and-integral-area.chinese.md | 2 +- .../problem-391-hopping-game.chinese.md | 2 +- ...roblem-392-enmeshed-unit-circle.chinese.md | 2 +- .../problem-393-migrating-ants.chinese.md | 2 +- .../problem-394-eating-pie.chinese.md | 2 +- .../problem-395-pythagorean-tree.chinese.md | 2 +- ...lem-396-weak-goodstein-sequence.chinese.md | 2 +- ...roblem-397-triangle-on-parabola.chinese.md | 2 +- .../problem-398-cutting-rope.chinese.md | 2 +- ...99-squarefree-fibonacci-numbers.chinese.md | 2 +- ...em-4-largest-palindrome-product.chinese.md | 4 +- ...oblem-40-champernownes-constant.chinese.md | 6 +- ...problem-400-fibonacci-tree-game.chinese.md | 2 +- ...-401-sum-of-squares-of-divisors.chinese.md | 2 +- ...-402-integer-valued-polynomials.chinese.md | 2 +- ...s-enclosed-by-parabola-and-line.chinese.md | 2 +- ...problem-404-crisscross-ellipses.chinese.md | 2 +- ...roblem-405-a-rectangular-tiling.chinese.md | 2 +- .../problem-406-guessing-game.chinese.md | 2 +- .../problem-407-idempotents.chinese.md | 2 +- ...admissible-paths-through-a-grid.chinese.md | 2 +- .../problem-409-nim-extreme.chinese.md | 2 +- .../problem-41-pandigital-prime.chinese.md | 4 +- ...lem-410-circle-and-tangent-line.chinese.md | 2 +- .../problem-411-uphill-paths.chinese.md | 2 +- .../problem-412-gnomon-numbering.chinese.md | 2 +- .../problem-413-one-child-numbers.chinese.md | 2 +- .../problem-414-kaprekar-constant.chinese.md | 7 +- .../problem-415-titanic-sets.chinese.md | 20 ++- .../problem-416-a-frogs-trip.chinese.md | 15 ++- ...roblem-417-reciprocal-cycles-ii.chinese.md | 6 +- ...oblem-418-factorisation-triples.chinese.md | 22 ++- ...oblem-419-look-and-say-sequence.chinese.md | 27 +++- ...oblem-42-coded-triangle-numbers.chinese.md | 25 ++-- ...420-2x2-positive-integer-matrix.chinese.md | 25 +++- ...oblem-421-prime-factors-of-n151.chinese.md | 21 ++- ...quence-of-points-on-a-hyperbola.chinese.md | 25 +++- ...blem-423-consecutive-die-throws.chinese.md | 30 ++++- .../problem-424-kakuro.chinese.md | 30 ++++- .../problem-425-prime-connection.chinese.md | 28 +++- .../problem-426-box-ball-system.chinese.md | 42 +++++- .../problem-427-n-sequences.chinese.md | 23 +++- ...problem-428-necklace-of-circles.chinese.md | 22 ++- ...-of-squares-of-unitary-divisors.chinese.md | 17 ++- ...blem-43-sub-string-divisibility.chinese.md | 20 ++- .../problem-430-range-flips.chinese.md | 27 +++- .../problem-431-square-space-silo.chinese.md | 9 +- .../problem-432-totient-sum.chinese.md | 16 ++- ...-433-steps-in-euclids-algorithm.chinese.md | 24 +++- .../problem-434-rigid-graphs.chinese.md | 28 +++- ...olynomials-of-fibonacci-numbers.chinese.md | 16 ++- .../problem-436-unfair-wager.chinese.md | 20 ++- ...m-437-fibonacci-primitive-roots.chinese.md | 6 +- ...-polynomial-equations-solutions.chinese.md | 7 +- ...blem-439-sum-of-sum-of-divisors.chinese.md | 15 ++- .../problem-44-pentagon-numbers.chinese.md | 16 ++- .../problem-440-gcd-and-tiling.chinese.md | 24 +++- ...se-summation-of-coprime-couples.chinese.md | 2 +- ...roblem-442-eleven-free-integers.chinese.md | 14 +- .../problem-443-gcd-sequence.chinese.md | 9 +- ...blem-444-the-roundtable-lottery.chinese.md | 7 +- .../problem-445-retractions-a.chinese.md | 2 +- .../problem-446-retractions-b.chinese.md | 7 +- .../problem-447-retractions-c.chinese.md | 2 +- ...8-average-least-common-multiple.chinese.md | 2 +- ...lem-449-chocolate-covered-candy.chinese.md | 2 +- ...ngular-pentagonal-and-hexagonal.chinese.md | 11 +- ...-hypocycloid-and-lattice-points.chinese.md | 5 +- .../problem-451-modular-inverses.chinese.md | 6 +- .../problem-452-long-products.chinese.md | 14 +- ...blem-453-lattice-quadrilaterals.chinese.md | 2 +- ...454-diophantine-reciprocals-iii.chinese.md | 2 +- ...455-powers-with-trailing-digits.chinese.md | 2 +- ...angles-containing-the-origin-ii.chinese.md | 4 +- ...al-modulo-the-square-of-a-prime.chinese.md | 2 +- ...lem-458-permutations-of-project.chinese.md | 2 +- .../problem-459-flipping-game.chinese.md | 2 +- ...m-46-goldbachs-other-conjecture.chinese.md | 2 +- .../problem-460-an-ant-on-the-move.chinese.md | 2 +- .../problem-461-almost-pi.chinese.md | 2 +- ...permutation-of-3-smooth-numbers.chinese.md | 2 +- ...463-a-weird-recurrence-relation.chinese.md | 2 +- ...64-mbius-function-and-intervals.chinese.md | 2 +- .../problem-465-polar-polygons.chinese.md | 2 +- ...terms-in-a-multiplication-table.chinese.md | 2 +- .../problem-467-superinteger.chinese.md | 2 +- ...visors-of-binomial-coefficients.chinese.md | 2 +- .../problem-469-empty-chairs.chinese.md | 2 +- ...blem-47-distinct-primes-factors.chinese.md | 6 +- .../problem-470-super-ramvok.chinese.md | 2 +- ...1-triangle-inscribed-in-ellipse.chinese.md | 2 +- ...lem-472-comfortable-distance-ii.chinese.md | 2 +- ...roblem-473-phigital-number-base.chinese.md | 2 +- ...lem-474-last-digits-of-divisors.chinese.md | 2 +- .../problem-475-music-festival.chinese.md | 2 +- .../problem-476-circle-packing-ii.chinese.md | 2 +- ...roblem-477-number-sequence-game.chinese.md | 2 +- .../problem-478-mixtures.chinese.md | 2 +- .../problem-479-roots-on-the-rise.chinese.md | 2 +- .../problem-48-self-powers.chinese.md | 8 +- .../problem-480-the-last-question.chinese.md | 2 +- .../problem-49-prime-permutations.chinese.md | 2 +- .../problem-5-smallest-multiple.chinese.md | 10 +- ...roblem-50-consecutive-prime-sum.chinese.md | 4 +- ...lem-51-prime-digit-replacements.chinese.md | 2 +- .../problem-52-permuted-multiples.chinese.md | 2 +- ...blem-53-combinatoric-selections.chinese.md | 8 +- .../problem-54-poker-hands.chinese.md | 2 +- .../problem-55-lychrel-numbers.chinese.md | 10 +- .../problem-56-powerful-digit-sum.chinese.md | 2 +- ...blem-57-square-root-convergents.chinese.md | 2 +- .../problem-58-spiral-primes.chinese.md | 2 +- .../problem-59-xor-decryption.chinese.md | 2 +- ...problem-6-sum-square-difference.chinese.md | 6 +- .../problem-60-prime-pair-sets.chinese.md | 2 +- ...em-61-cyclical-figurate-numbers.chinese.md | 2 +- .../problem-62-cubic-permutations.chinese.md | 2 +- ...roblem-63-powerful-digit-counts.chinese.md | 2 +- ...blem-64-odd-period-square-roots.chinese.md | 2 +- .../problem-65-convergents-of-e.chinese.md | 2 +- ...problem-66-diophantine-equation.chinese.md | 2 +- .../problem-67-maximum-path-sum-ii.chinese.md | 2 +- .../problem-68-magic-5-gon-ring.chinese.md | 2 +- .../problem-69-totient-maximum.chinese.md | 2 +- .../problem-7-10001st-prime.chinese.md | 10 +- .../problem-70-totient-permutation.chinese.md | 2 +- ...oblem-74-digit-factorial-chains.chinese.md | 2 +- ...ingular-integer-right-triangles.chinese.md | 2 +- .../problem-76-counting-summations.chinese.md | 2 +- .../problem-77-prime-summations.chinese.md | 2 +- .../problem-78-coin-partitions.chinese.md | 2 +- .../problem-79-passcode-derivation.chinese.md | 2 +- ...m-8-largest-product-in-a-series.chinese.md | 4 +- ...0-square-root-digital-expansion.chinese.md | 2 +- .../problem-81-path-sum-two-ways.chinese.md | 2 +- .../problem-82-path-sum-three-ways.chinese.md | 2 +- .../problem-83-path-sum-four-ways.chinese.md | 2 +- .../problem-84-monopoly-odds.chinese.md | 2 +- .../problem-85-counting-rectangles.chinese.md | 2 +- .../problem-86-cuboid-route.chinese.md | 2 +- .../problem-87-prime-power-triples.chinese.md | 2 +- .../problem-88-product-sum-numbers.chinese.md | 2 +- .../problem-89-roman-numerals.chinese.md | 2 +- ...m-9-special-pythagorean-triplet.chinese.md | 6 +- .../problem-90-cube-digit-pairs.chinese.md | 2 +- ...angles-with-integer-coordinates.chinese.md | 2 +- .../problem-92-square-digit-chains.chinese.md | 2 +- ...oblem-93-arithmetic-expressions.chinese.md | 2 +- ...94-almost-equilateral-triangles.chinese.md | 2 +- .../problem-95-amicable-chains.chinese.md | 2 +- .../problem-96-su-doku.chinese.md | 2 +- ...lem-97-large-non-mersenne-prime.chinese.md | 2 +- .../problem-98-anagramic-squares.chinese.md | 2 +- .../problem-99-largest-exponential.chinese.md | 2 +- .../rosetta-code/100-doors.chinese.md | 6 +- .../rosetta-code/24-game.chinese.md | 10 +- ...illion-names-of-god-the-integer.chinese.md | 14 +- .../rosetta-code/abc-problem.chinese.md | 16 +-- ...-perfect-number-classifications.chinese.md | 8 +- .../accumulator-factory.chinese.md | 8 +- .../ackermann-function.chinese.md | 10 +- .../rosetta-code/align-columns.chinese.md | 8 +- .../rosetta-code/amicable-pairs.chinese.md | 8 +- .../rosetta-code/averages-mode.chinese.md | 6 +- .../averages-pythagorean-means.chinese.md | 4 +- .../averages-root-mean-square.chinese.md | 4 +- .../rosetta-code/babbage-problem.chinese.md | 4 +- .../rosetta-code/balanced-brackets.chinese.md | 72 +++++----- ...given-radius-through-two-points.chinese.md | 12 +- .../closest-pair-problem.chinese.md | 10 +- .../rosetta-code/combinations.chinese.md | 6 +- .../rosetta-code/comma-quibbling.chinese.md | 22 +-- .../compare-a-list-of-strings.chinese.md | 44 +++--- ...rt-seconds-to-compound-duration.chinese.md | 8 +- ...ount-occurrences-of-a-substring.chinese.md | 14 +- .../rosetta-code/count-the-coins.chinese.md | 4 +- .../rosetta-code/cramers-rule.chinese.md | 6 +- .../rosetta-code/date-format.chinese.md | 8 +- .../rosetta-code/date-manipulation.chinese.md | 24 ++-- .../rosetta-code/day-of-the-week.chinese.md | 8 +- .../deal-cards-for-freecell.chinese.md | 10 +- .../rosetta-code/deepcopy.chinese.md | 12 +- .../define-a-primitive-data-type.chinese.md | 28 ++-- .../department-numbers.chinese.md | 8 +- .../rosetta-code/discordian-date.chinese.md | 30 ++--- .../element-wise-operations.chinese.md | 30 ++--- .../rosetta-code/emirp-primes.chinese.md | 10 +- .../rosetta-code/entropy.chinese.md | 26 ++-- .../rosetta-code/equilibrium-index.chinese.md | 14 +- .../ethiopian-multiplication.chinese.md | 12 +- .../rosetta-code/euler-method.chinese.md | 10 +- .../evaluate-binomial-coefficients.chinese.md | 12 +- .../execute-a-markov-algorithm.chinese.md | 126 +++++++++--------- .../rosetta-code/execute-brain.chinese.md | 18 +-- .../extensible-prime-generator.chinese.md | 10 +- .../rosetta-code/factorial.chinese.md | 10 +- .../factors-of-a-mersenne-number.chinese.md | 10 +- .../factors-of-an-integer.chinese.md | 8 +- .../rosetta-code/farey-sequence.chinese.md | 16 +-- ...bonacci-n-step-number-sequences.chinese.md | 32 ++--- .../fibonacci-sequence.chinese.md | 10 +- .../rosetta-code/fibonacci-word.chinese.md | 6 +- .../rosetta-code/fractran.chinese.md | 14 +- .../rosetta-code/gamma-function.chinese.md | 14 +- .../gaussian-elimination.chinese.md | 14 +- .../rosetta-code/general-fizzbuzz.chinese.md | 36 ++--- ...erate-lower-case-ascii-alphabet.chinese.md | 26 ++-- .../rosetta-code/gray-code.chinese.md | 16 +-- .../greatest-common-divisor.chinese.md | 16 +-- .../greatest-subsequential-sum.chinese.md | 16 +-- .../hailstone-sequence.chinese.md | 4 +- .../rosetta-code/happy-numbers.chinese.md | 26 ++-- .../harshad-or-niven-series.chinese.md | 6 +- .../hash-from-two-arrays.chinese.md | 26 ++-- .../rosetta-code/hash-join.chinese.md | 8 +- .../heronian-triangles.chinese.md | 10 +- ...stadter-figure-figure-sequences.chinese.md | 24 ++-- .../hofstadter-q-sequence.chinese.md | 12 +- .../i-before-e-except-after-c.chinese.md | 30 ++--- .../rosetta-code/iban.chinese.md | 26 ++-- .../rosetta-code/identity-matrix.chinese.md | 12 +- .../iterated-digits-squaring.chinese.md | 16 +-- .../rosetta-code/jaro-distance.chinese.md | 26 ++-- .../rosetta-code/jortsort.chinese.md | 16 +-- .../rosetta-code/josephus-problem.chinese.md | 14 +- .../rosetta-code/s-expressions.chinese.md | 10 +- ...s-coconuts-and-a-monkey-problem.chinese.md | 8 +- .../rosetta-code/sedols.chinese.md | 18 +-- .../rosetta-code/taxicab-numbers.chinese.md | 12 +- ...tokenize-a-string-with-escaping.chinese.md | 12 +- .../top-rank-per-group.chinese.md | 14 +- .../rosetta-code/topological-sort.chinese.md | 10 +- .../rosetta-code/towers-of-hanoi.chinese.md | 18 +-- .../vector-cross-product.chinese.md | 6 +- .../vector-dot-product.chinese.md | 12 +- .../rosetta-code/word-wrap.chinese.md | 16 +-- .../rosetta-code/y-combinator.chinese.md | 12 +- ...eckendorf-number-representation.chinese.md | 4 +- .../zhang-suen-thinning-algorithm.chinese.md | 8 +- .../rosetta-code/zig-zag-matrix.chinese.md | 12 +- ...s-and-microservices-certificate.chinese.md | 20 +-- .../data-visualization-certificate.chinese.md | 20 +-- ...front-end-libraries-certificate.chinese.md | 20 +-- ...d-quality-assurance-certificate.chinese.md | 20 +-- ...and-data-structures-certificate.chinese.md | 20 +-- .../legacy-back-end-certificate.chinese.md | 40 +++--- ...-data-visualization-certificate.chinese.md | 40 +++--- .../legacy-front-end-certificate.chinese.md | 40 +++--- ...sponsive-web-design-certificate.chinese.md | 20 +-- 1264 files changed, 5635 insertions(+), 4331 deletions(-) diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/avoid-colorblindness-issues-by-using-sufficient-contrast.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/avoid-colorblindness-issues-by-using-sufficient-contrast.chinese.md index 70cec22767..5c7770e5f5 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/avoid-colorblindness-issues-by-using-sufficient-contrast.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/avoid-colorblindness-issues-by-using-sufficient-contrast.chinese.md @@ -26,9 +26,9 @@ Camper Cat 正在尝试为他的博客文本与背景使用颜色,但是他目 ```yml tests: - text: '你应该将color属性的亮度值设置为 15%。' - testString: 'assert(code.match(/color:\s*?hsl\(0,\s*?55%,\s*?15%\)/gi));' + testString: assert(code.match(/color:\s*?hsl\(0,\s*?55%,\s*?15%\)/gi)); - text: '你应该将background-color属性的亮度值设置为 55%。' - testString: 'assert(code.match(/background-color:\s*?hsl\(120,\s*?25%,\s*?55%\)/gi));' + testString: assert(code.match(/background-color:\s*?hsl\(120,\s*?25%,\s*?55%\)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/improve-accessibility-of-audio-content-with-the-audio-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/improve-accessibility-of-audio-content-with-the-audio-element.chinese.md index d8ccd9abab..5167a09d55 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/improve-accessibility-of-audio-content-with-the-audio-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/improve-accessibility-of-audio-content-with-the-audio-element.chinese.md @@ -45,7 +45,7 @@ tests: - text: 'source标签应该在audio标签中。' testString: assert($('audio').children('source').length === 1); - text: 'source标签中src属性的值应该与教程中的链接一致。' - testString: 'assert($(''source'').attr(''src'') === ''https://s3.amazonaws.com/freecodecamp/screen-reader.mp3'');' + testString: assert($('source').attr('src') === 'https://s3.amazonaws.com/freecodecamp/screen-reader.mp3'); - text: 'source标签中应具有type属性,其值为 audio/mpeg。' testString: assert($('source').attr('type') === 'audio/mpeg'); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-elements-only-visible-to-a-screen-reader-by-using-custom-css.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-elements-only-visible-to-a-screen-reader-by-using-custom-css.chinese.md index df5bd11b2f..eba5e702d0 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-elements-only-visible-to-a-screen-reader-by-using-custom-css.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-elements-only-visible-to-a-screen-reader-by-using-custom-css.chinese.md @@ -46,9 +46,9 @@ tests: - text: 'sr-only类中的left属性的值应为 -10000px。' testString: assert($('.sr-only').css('left') == '-10000px'); - text: 'sr-only类中的width属性的值应为 1px。' - testString: 'assert(code.match(/width:\s*?1px/gi));' + testString: assert(code.match(/width:\s*?1px/gi)); - text: 'sr-only类中的height属性的值应为 1px。' - testString: 'assert(code.match(/height:\s*?1px/gi));' + testString: assert(code.match(/height:\s*?1px/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-links-navigable-with-html-access-keys.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-links-navigable-with-html-access-keys.chinese.md index 31c87c3be2..7caf0280b6 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-links-navigable-with-html-access-keys.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/make-links-navigable-with-html-access-keys.chinese.md @@ -32,7 +32,7 @@ tests: - text: '你应该将id是 "first" 的a标签的accesskey属性值设置为小写 "g"。' testString: assert($('#first').attr('accesskey') == 'g'); - text: '你应该将id是 "second" 的a标签的accesskey属性值设置为小写 "c"。' - testString: assert($('#second').attr('accesskey') == 'c') + testString: assert($('#second').attr('accesskey') == 'c'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/standardize-times-with-the-html5-datetime-attribute.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/standardize-times-with-the-html5-datetime-attribute.chinese.md index d539b2b7b2..9fa8217416 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/standardize-times-with-the-html5-datetime-attribute.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/standardize-times-with-the-html5-datetime-attribute.chinese.md @@ -25,13 +25,13 @@ Camper Cat 的比武大会的时间确定了!请使用time标签 ```yml tests: - text: 'time标签应该包含文本"Thursday, September 15<sup>th</sup>"。' - testString: assert($('time').text().match(/Thursday, September 15th/g)); + testString: assert(timeElement.length); - text: 'time标签应该有 1 个非空的datetime属性。' - testString: assert($('time').attr('datetime')); + testString: assert(timeElement.length && $(timeElement).html().trim() === "Thursday, September 15th"); - text: 'datetime属性的值应该为 2016-09-15。' - testString: assert($('time').attr('datetime') === "2016-09-15"); + testString: assert(datetimeAttr && datetimeAttr.length); - text: '确保time标签是闭合的。' - testString: assert(code.match(/<\/time>/g) && code.match(/<\/time>/g).length === 4); + testString: assert(datetimeAttr === "2016-09-15"); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/use-headings-to-show-hierarchical-relationships-of-content.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/use-headings-to-show-hierarchical-relationships-of-content.chinese.md index 7e816d46c7..63d8803cd6 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/use-headings-to-show-hierarchical-relationships-of-content.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-accessibility/use-headings-to-show-hierarchical-relationships-of-content.chinese.md @@ -28,9 +28,9 @@ Camper Cat 希望他的网站有一个介绍如何成为忍者的页面。请帮 ```yml tests: - text: '你的代码应该包含 6 个h3标签。' - testString: assert($('h3').length === 6); + testString: assert($("h3").length === 6); - text: '你的代码不应包含 h5 标签。' - testString: assert($('h5').length === 0); + testString: assert((code.match(/\/h3/g) || []).length===6); - text: '代码不应该包含 h5 标记.' testString: assert($("h5").length === 0); - text: '代码不应该包含 h5 结束标记。' diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/add-a-box-shadow-to-a-card-like-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/add-a-box-shadow-to-a-card-like-element.chinese.md index c2d79b55c2..b50e4bdd6d 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/add-a-box-shadow-to-a-card-like-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/add-a-box-shadow-to-a-card-like-element.chinese.md @@ -39,9 +39,9 @@ box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23); ```yml tests: - text: '你应该给 id 为 thumbnail 的元素添加 box-shadow 属性。' - testString: assert(code.match(/#thumbnail\s*?{\s*?box-shadow/g), '你应该给 id 为 thumbnail 的元素添加 box-shadow 属性。'); + testString: assert(code.match(/#thumbnail\s*?{\s*?box-shadow/g)); - text: 'box-shadow 值应该是指定的 CSS 值。' - testString: 'assert(code.match(/box-shadow:\s*?0\s+?10px\s+?20px\s+?rgba\(\s*?0\s*?,\s*?0\s*?,\s*?0\s*?,\s*?0?\.19\),\s*?0\s+?6px\s+?6px\s+?rgba\(\s*?0\s*?,\s*?0\s*?,\s*?0\s*?,\s*?0?\.23\)/gi), ''box-shadow 值应该是指定的 CSS 值。'');' + testString: assert(code.match(/box-shadow:\s*?0\s+?10px\s+?20px\s+?rgba\(\s*?0\s*?,\s*?0\s*?,\s*?0\s*?,\s*?0?\.19\)\s*?,\s*?0\s+?6px\s+?6px\s+?rgba\(\s*?0\s*?,\s*?0\s*?,\s*?0\s*?,\s*?0?\.23\)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-background-color-property-of-text.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-background-color-property-of-text.chinese.md index cdbdb20859..b1750825a2 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-background-color-property-of-text.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-background-color-property-of-text.chinese.md @@ -27,11 +27,11 @@ RGB 值可以在 0 到 255 之间。alpha 值可以在 0 到 1 之间,其中 0 ```yml tests: - text: '你应该给 h4 元素添加一个 background-color 属性并且赋值 rgba(45, 45, 45, 0.1)。' - testString: 'assert(code.match(/background-color:\s*?rgba\(\s*?45\s*?,\s*?45\s*?,\s*?45\s*?,\s*?0?\.1\s*?\)/gi), ''你应该给 h4 元素添加一个 background-color 属性并且赋值 rgba(45, 45, 45, 0.1)。'');' + testString: assert(code.match(/(background-color|background):\s*?rgba\(\s*?45\s*?,\s*?45\s*?,\s*?45\s*?,\s*?0?\.1\s*?\);/gi)); - text: '你应该给 h4 元素添加一个 padding 属性并且赋值 10px。' - testString: assert($('h4').css('padding-top') == '10px' && $('h4').css('padding-right') == '10px' && $('h4').css('padding-bottom') == '10px' && $('h4').css('padding-left') == '10px', '你应该给 h4 元素添加一个 padding 属性并且赋值 10px。'); + testString: assert($('h4').css('padding-top') == '10px' && $('h4').css('padding-right') == '10px' && $('h4').css('padding-bottom') == '10px' && $('h4').css('padding-left') == '10px'); - text: 'h4 元素的 height 属性应该被移除。' - testString: assert(!($('h4').css('height') == '25px'), 'h4 元素的 height 属性应该被移除。'); + testString: assert(!($('h4').css('height') == '25px')); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-color-of-various-elements-to-complementary-colors.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-color-of-various-elements-to-complementary-colors.chinese.md index eb983b1a34..d47d89adfc 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-color-of-various-elements-to-complementary-colors.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-color-of-various-elements-to-complementary-colors.chinese.md @@ -23,13 +23,13 @@ localeTitle: 将各种元素的颜色调整为互补色 ```yml tests: - text: 'header 元素应该有一个值为 #09A7A1background-color CSS 属性。' - testString: assert($('header').css('background-color') == 'rgb(9, 167, 161)', 'header 元素应该有一个值为 #09A7A1background-color CSS 属性。'); + testString: "assert($('header').css('background-color') == 'rgb(9, 167, 161)');" - text: 'footer 元素应该有一个值为 #09A7A1background-colorCSS 属性。' - testString: assert($('footer').css('background-color') == 'rgb(9, 167, 161)', 'footer 元素应该有一个值为 #09A7A1background-color CSS 属性。'); + testString: "assert($('footer').css('background-color') == 'rgb(9, 167, 161)');" - text: 'h2 元素应该有一个值为 #09A7A1color CSS 属性。' - testString: assert($('h2').css('color') == 'rgb(9, 167, 161)', 'h2 元素应该有一个值为 #09A7A1color CSS 属性。'); + testString: "assert($('h2').css('color') == 'rgb(9, 167, 161)');" - text: 'button 元素应该有一个值为 #FF790Ebackground-color CSS 属性。' - testString: assert($('button').css('background-color') == 'rgb(255, 121, 14)', 'button 元素应该有一个值为 #FF790Ebackground-color CSS 属性。'); + testString: "assert($('button').css('background-color') == 'rgb(255, 121, 14)');" ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-height-of-an-element-using-the-height-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-height-of-an-element-using-the-height-property.chinese.md index 5e6983a15c..462a6aae64 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-height-of-an-element-using-the-height-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-height-of-an-element-using-the-height-property.chinese.md @@ -31,7 +31,7 @@ img { ```yml tests: - text: '你应该设置 h4height 属性,使其值为 25px。' - testString: assert($('h4').css('height') == '25px', '你应该设置 h4height 属性,使其值为 25px。'); + testString: assert(Math.round(document.querySelector('h4').getBoundingClientRect().height) === 25 && /h4{\S*height:25px(;\S*}|})/.test($('style').text().replace(/\s/g ,''))); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hover-state-of-an-anchor-tag.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hover-state-of-an-anchor-tag.chinese.md index c331f6ba45..54f0bf5240 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hover-state-of-an-anchor-tag.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hover-state-of-an-anchor-tag.chinese.md @@ -31,9 +31,9 @@ a:hover { ```yml tests: - text: '超链接的 color 应该保持黑色,只添加 :hover CSS 规则。' - testString: 'assert($(''a'').css(''color'') == ''rgb(0, 0, 0)'', ''超链接的 color 应该保持黑色,只添加 :hover CSS 规则。'');' + testString: assert($('a').css('color') == 'rgb(0, 0, 0)'); - text: '悬停超链接时超链接 color 应该变成蓝色。' - testString: 'assert(code.match(/a:hover\s*?{\s*?color:\s*?blue;\s*?}/gi), ''悬停超链接时超链接 color 应该变成蓝色。'');' + testString: assert(code.match(/a:hover\s*?{\s*?color:\s*?(blue|rgba\(\s*?0\s*?,\s*?0\s*?,\s*?255\s*?,\s*?1\s*?\)|#00F|rgb\(\s*?0\s*?,\s*?0\s*?,\s*?255\s*?\))\s*?;\s*?}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hue-of-a-color.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hue-of-a-color.chinese.md index e6a8992b15..5c24e95ff4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hue-of-a-color.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-hue-of-a-color.chinese.md @@ -28,17 +28,17 @@ HSL 色彩空间模型是一种将 RGB 色彩模型中的点放在圆柱坐标 ```yml tests: - text: '你应该使用 hsl() 属性来表示绿色。' - testString: 'assert(code.match(/\.green\s*?{\s*?background-color:\s*?hsl/gi), ''你应该使用 hsl() 属性来表示绿色。'');' + testString: assert(code.match(/\.green\s*?{\s*?background-color:\s*?hsl/gi)); - text: '你应该使用 hsl() 属性来表示蓝绿色。' - testString: 'assert(code.match(/\.cyan\s*?{\s*?background-color:\s*?hsl/gi), ''你应该使用 hsl() 属性来表示蓝绿色。'');' + testString: assert(code.match(/\.cyan\s*?{\s*?background-color:\s*?hsl/gi)); - text: '你应该使用 hsl() 属性来表示蓝色。' - testString: 'assert(code.match(/\.blue\s*?{\s*?background-color:\s*?hsl/gi), ''你应该使用 hsl() 属性来表示蓝色。'');' + testString: assert(code.match(/\.blue\s*?{\s*?background-color:\s*?hsl/gi)); - text: 'class 为 greendiv 应该有绿色的 background-color CSS 属性。' - testString: assert($('.green').css('background-color') == 'rgb(0, 255, 0)', 'class 为 greendiv 应该有绿色的 background-color CSS 属性。'); + testString: assert($('.green').css('background-color') == 'rgb(0, 255, 0)'); - text: 'class 为 cyandiv 应该有蓝绿色的 background-color CSS 属性。' - testString: assert($('.cyan').css('background-color') == 'rgb(0, 255, 255)', 'class 为 cyandiv 应该有蓝绿色的 background-color CSS 属性。'); + testString: assert($('.cyan').css('background-color') == 'rgb(0, 255, 255)'); - text: 'class 为 bluediv 应该有蓝色的 background-color CSS 属性。' - testString: assert($('.blue').css('background-color') == 'rgb(0, 0, 255)', 'class 为 cyandiv 应该有蓝色的 background-color CSS 属性。'); + testString: assert($('.blue').css('background-color') == 'rgb(0, 0, 255)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-size-of-a-header-versus-a-paragraph-tag.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-size-of-a-header-versus-a-paragraph-tag.chinese.md index 3f818a12ca..1c8244c747 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-size-of-a-header-versus-a-paragraph-tag.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-size-of-a-header-versus-a-paragraph-tag.chinese.md @@ -23,7 +23,7 @@ localeTitle: 调整标题与段落的大小 ```yml tests: - text: '你应该给 h4 元素添加一个 font-size 属性并且赋值 27px。' - testString: assert($('h4').css('font-size') == '27px', '你应该给 h4 元素添加一个 font-size 属性并且赋值 27px。'); + testString: assert($('h4').css('font-size') == '27px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-tone-of-a-color.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-tone-of-a-color.chinese.md index ae4a6a3ee4..36510680c4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-tone-of-a-color.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-tone-of-a-color.chinese.md @@ -23,7 +23,7 @@ localeTitle: 调整颜色的色调 ```yml tests: - text: 'nav 元素应该有一个使用 hsl() 属性调节蓝绿色调的 background-color CSS 属性。' - testString: 'assert(code.match(/nav\s*?{\s*?background-color:\s*?hsl\(180,\s*?80%,\s*?25%\)/gi), ''nav 元素应该有一个使用 hsl() 调节蓝绿色调的 background-color CSS 属性。'');' + testString: assert(code.match(/nav\s*?{\s*?background-color:\s*?hsl\(180,\s*?80%,\s*?25%\)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-width-of-an-element-using-the-width-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-width-of-an-element-using-the-width-property.chinese.md index 3344e23019..f8f5305574 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-width-of-an-element-using-the-width-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/adjust-the-width-of-an-element-using-the-width-property.chinese.md @@ -30,7 +30,7 @@ img { ```yml tests: - text: '你应该使用 fullCard class 选择器将卡片的 width 宽度属性更改为 245px。' - testString: 'assert(code.match(/.fullCard\s*{[\s\S][^}]*\n*^\s*width\s*:\s*245px\s*;/gm), ''你应该使用 fullCard class 选择器将卡片的 width 宽度属性更改为 245px。'');' + testString: const fullCard = code.match(/\.fullCard\s*{[\s\S]+?[^}]}/g); assert(fullCard && /width\s*:\s*245px\s*(;|})/gi.test(fullCard[0]) && $('.fullCard').css('maxWidth') === 'none'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-at-variable-rates.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-at-variable-rates.chinese.md index 2ef06f92be..74d4865d81 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-at-variable-rates.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-at-variable-rates.chinese.md @@ -24,7 +24,7 @@ localeTitle: 以可变速率来给元素添加动画 ```yml tests: - text: 'star-1 class 的 @keyframes 规则应该为50%。' - testString: assert(code.match(/twinkle-1\s*?{\s*?50%/g), 'star-1class 的 @keyframes 规则应该为50%。'); + testString: assert(code.match(/twinkle-1\s*?{\s*?50%/g)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-continually-using-an-infinite-animation-count.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-continually-using-an-infinite-animation-count.chinese.md index 95a89f4db1..5e5a51e7c9 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-continually-using-an-infinite-animation-count.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-elements-continually-using-an-infinite-animation-count.chinese.md @@ -25,7 +25,7 @@ localeTitle: 使用无限的动画计数制作永不停止的动画 ```yml tests: - text: 'animation-iteration-count 属性值应该为 infinite。' - testString: assert($('#ball').css('animation-iteration-count') == 'infinite', 'animation-iteration-count 属性值应该为 infinite。'); + testString: assert($('#ball').css('animation-iteration-count') == 'infinite'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-multiple-elements-at-variable-rates.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-multiple-elements-at-variable-rates.chinese.md index 4f03a3ff99..5583832e0d 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-multiple-elements-at-variable-rates.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/animate-multiple-elements-at-variable-rates.chinese.md @@ -24,11 +24,11 @@ localeTitle: 以可变速率来给多个元素添加动画 ```yml tests: - text: 'class 为 star-1animation-duration 属性值应该 1s。' - testString: assert($('.star-1').css('animation-duration') == '1s', 'class 为 star-1animation-duration 属性值应该 1s。'); + testString: assert($('.star-1').css('animation-duration') == '1s'); - text: 'class 为 star-2animation-duration 属性值应该 0.9s。' - testString: assert($('.star-2').css('animation-duration') == '0.9s', 'class 为 star-2animation-duration 属性值应该 0.9s。'); + testString: assert($('.star-2').css('animation-duration') == '0.9s'); - text: 'class 为 star-3animation-duration 属性值应该 1.1s。' - testString: assert($('.star-3').css('animation-duration') == '1.1s', 'class 为 star-3animation-duration 属性值应该 1.1s。'); + testString: assert($('.star-3').css('animation-duration') == '1.1s'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/center-an-element-horizontally-using-the-margin-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/center-an-element-horizontally-using-the-margin-property.chinese.md index 921f4dfff3..24676c8ca9 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/center-an-element-horizontally-using-the-margin-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/center-an-element-horizontally-using-the-margin-property.chinese.md @@ -24,7 +24,7 @@ localeTitle: 使用 margin 属性将元素水平居中 ```yml tests: - text: 'divmargin 应该为 auto。' - testString: 'assert(code.match(/margin:\s*?auto;/g), ''divmargin 应该为 auto。'');' + testString: assert(code.match(/margin:\s*?auto;/g)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-an-elements-relative-position.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-an-elements-relative-position.chinese.md index f3739a9609..45b6d1c72c 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-an-elements-relative-position.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-an-elements-relative-position.chinese.md @@ -34,9 +34,9 @@ p { ```yml tests: - text: 'h2 元素应该添加 position 属性并赋值 relative。' - testString: assert($('h2').css('position') == 'relative', 'h2 元素应该添加position 属性并赋值 relative。'); + testString: assert($('h2').css('position') == 'relative'); - text: '你应该使用 CSS 属性调整 h2 的位置使其从原来的位置向下偏移 15px。' - testString: assert($('h2').css('top') == '15px', '你应该使用 CSS 属性调整 h2 的位置使其从原来的位置向下偏移 15px。'); + testString: assert($('h2').css('top') == '15px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-animation-timing-with-keywords.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-animation-timing-with-keywords.chinese.md index d576a5aa2c..c8a637b781 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-animation-timing-with-keywords.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-animation-timing-with-keywords.chinese.md @@ -24,9 +24,9 @@ localeTitle: 使用关键字更改动画定时器 ```yml tests: - text: 'id 为 ball1 的元素的 animation-timing-function 属性值应该为 linear。' - testString: assert($('#ball1').css('animation-timing-function') == 'linear', 'id 为 ball1 的元素的 animation-timing-function 属性值应该为 linear。'); + testString: const ball1Animation = $('#ball1').css('animation-timing-function').replace(/\s/g, '');assert(ball1Animation == 'linear' || ball1Animation == 'cubic-bezier(0,0,1,1)'); - text: 'id 为 ball2 的元素的 animation-timing-function 属性值应该为 ease-out。' - testString: assert($('#ball2').css('animation-timing-function') == 'ease-out', 'id 为 ball2 的元素的 animation-timing-function 属性值应该为 ease-out。'); + testString: const ball2Animation = $('#ball2').css('animation-timing-function').replace(/\s/g, ''); assert(ball2Animation == 'ease-out' || ball2Animation == 'cubic-bezier(0,0,0.58,1)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-the-position-of-overlapping-elements-with-the-z-index-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-the-position-of-overlapping-elements-with-the-z-index-property.chinese.md index 70d15cf255..53904b5af3 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-the-position-of-overlapping-elements-with-the-z-index-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/change-the-position-of-overlapping-elements-with-the-z-index-property.chinese.md @@ -23,7 +23,7 @@ localeTitle: 使用 z-index 属性更改重叠元素的位置 ```yml tests: - text: 'class 为 first 的元素的 z-index 值应该为 2。' - testString: assert($('.first').css('z-index') == '2', 'class 为 first 的元素的 z-index 值应该为 2。'); + testString: assert($('.first').css('z-index') == '2'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-gradual-css-linear-gradient.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-gradual-css-linear-gradient.chinese.md index 8095848cd5..6f506e5585 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-gradual-css-linear-gradient.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-gradual-css-linear-gradient.chinese.md @@ -28,7 +28,7 @@ HTML 元素的背景色并不局限于单色。CSS 还提供了颜色过渡, ```yml tests: - text: 'div 元素应该有一个指定方向和颜色的 linear-gradient background渐变色。' - testString: 'assert(code.match(/background:\s*?linear-gradient\(35deg,\s*?(#CCFFFF|#CFF),\s*?(#FFCCCC|#FCC)\);/gi), ''div 元素应该有一个指定方向和颜色的 linear-gradient background 渐变色。'');' + testString: assert($('div').css('background-image').match(/linear-gradient\(35deg, rgb\(204, 255, 255\), rgb\(255, 204, 204\)\)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-graphic-using-css.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-graphic-using-css.chinese.md index fd3ced5dff..531fb3dd3e 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-graphic-using-css.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-graphic-using-css.chinese.md @@ -27,11 +27,11 @@ localeTitle: 使用 CSS 创建一个图形 ```yml tests: - text: 'background-color 属性应该取值 transparent。' - testString: 'assert(code.match(/background-color:\s*?transparent;/gi), ''background-color 属性应该取值 transparent。'');' + testString: assert(code.match(/background-color:\s*?transparent;/gi)); - text: 'border-radius 属性应该取值 50%。' - testString: 'assert(code.match(/border-radius:\s*?50%;/gi), ''border-radius属性应该取值50%。'');' + testString: assert(code.match(/border-radius:\s*?50%;/gi)); - text: 'box-shadow 属性的 offset-xoffset-yblur-radiusspread-radiuscolor 应该依次取值25px10px00blue。' - testString: 'assert(code.match(/box-shadow:\s*?25px\s+?10px\s+?0(px)?\s+?0(px)?\s+?blue\s*?;/gi), ''box-shadow 属性的 offset-xoffset-yblur-radiusspread-radiuscolor 应该依次取值25px10px00blue。'');' + testString: assert(code.match(/box-shadow:\s*?25px\s+?10px\s+?0(px)?\s+?0(px)?\s+?blue\s*?;/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-horizontal-line-using-the-hr-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-horizontal-line-using-the-hr-element.chinese.md index a4b7049151..484d95b5bb 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-horizontal-line-using-the-hr-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-horizontal-line-using-the-hr-element.chinese.md @@ -25,9 +25,9 @@ localeTitle: 使用 hr 标签创建水平线 ```yml tests: - text: '你应该添加一个 hr 标签。' - testString: assert($('hr').length == 1, '你应该添加一个 hr 标签。'); + testString: assert($('hr').length == 1); - text: 'hr 标签应该在标题和段落之间。' - testString: assert(code.match(/<\/h4>\s*?|\s*?\/>)\s*?

/gi), 'hr 标签应该在标题和段落之间。'); + testString: assert(code.match(/<\/h4>\s*?|\s*?\/>)\s*?

/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-more-complex-shape-using-css-and-html.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-more-complex-shape-using-css-and-html.chinese.md index 62e02fb7be..b9e59982d3 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-more-complex-shape-using-css-and-html.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-a-more-complex-shape-using-css-and-html.chinese.md @@ -41,13 +41,13 @@ localeTitle: 使用 CSS 和 HTML 创建更复杂的形状 ```yml tests: - text: 'heart::after 选择器的 background-color 属性值应该为粉色。' - testString: 'assert(code.match(/\.heart::after\s*?{\s*?background-color\s*?:\s*?pink\s*?;/gi), ''heart::after 选择器的 background-color 属性值应该为粉色。'');' + testString: assert(code.match(/\.heart::after\s*?{\s*?background-color\s*?:\s*?pink\s*?;/gi)); - text: 'heart::after 选择器的 border-radius 属性值应该为 50%。' - testString: 'assert(code.match(/border-radius\s*?:\s*?50%/gi).length == 2, ''heart::after 选择器的 border-radius 属性值应该为 50%。'');' + testString: assert(code.match(/border-radius\s*?:\s*?50%/gi).length == 2); - text: 'heart class 的 transform 属性应该使用 rotate() 函数并赋参为 -45deg。' - testString: 'assert(code.match(/transform\s*?:\s*?rotate\(\s*?-45deg\s*?\)/gi), ''heart class 的 transform 属性应该使用 rotate() 函数并赋参为 -45deg。'');' + testString: assert(code.match(/transform\s*?:\s*?rotate\(\s*?-45deg\s*?\)/gi)); - text: 'heart::before选择器的content应该为空字符串。' - testString: 'assert(code.match(/\.heart::before\s*?{\s*?content\s*?:\s*?("|'')\1\s*?;/gi), ''heart::before 选择器的 content 应该为空字符串。'');' + testString: assert(code.match(/\.heart::before\s*?{\s*?content\s*?:\s*?("|')\1\s*?;/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-movement-using-css-animation.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-movement-using-css-animation.chinese.md index 29b39f36ca..9762560bb4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-movement-using-css-animation.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-movement-using-css-animation.chinese.md @@ -42,11 +42,11 @@ localeTitle: 使用 CSS 动画创建运动 ```yml tests: - text: '0%@keyframes 规则应该为向 left 偏移 0px。' - testString: 'assert(code.match(/0%\s*?{\s*?background-color:\s*?blue;\s*?top:\s*?0px;\s*?left:\s*?0px;\s*?}/gi), ''0%@keyframes 规则应该为向 left 偏移 0px。'');' + testString: assert(code.match(/0%\s*?{\s*?background-color:\s*?blue;\s*?top:\s*?0(px)?;\s*?left:\s*?0(px)?;\s*?}/gi)); - text: '50%@keyframes 规则应该为向 left 偏移25px。' - testString: 'assert(code.match(/50%\s*?{\s*?background-color:\s*?green;\s*?top:\s*?50px;\s*?left:\s*?25px;\s*?}/gi), ''50%@keyframes 规则应该为向left 偏移 25px。'');' + testString: assert(code.match(/50%\s*?{\s*?background-color:\s*?green;\s*?top:\s*?50px;\s*?left:\s*?25px;\s*?}/gi)); - text: '100%@keyframes 规则应该为向 left 偏移-25px。' - testString: 'assert(code.match(/100%\s*?{\s*?background-color:\s*?yellow;\s*?top:\s*?0px;\s*?left:\s*?-25px;\s*?}/gi), ''100%@keyframes 规则应该为向left 偏移 -25px。'');' + testString: assert(code.match(/100%\s*?{\s*?background-color:\s*?yellow;\s*?top:\s*?0(px)?;\s*?left:\s*?-25px;\s*?}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-texture-by-adding-a-subtle-pattern-as-a-background-image.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-texture-by-adding-a-subtle-pattern-as-a-background-image.chinese.md index 332d7ada32..9d04114de0 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-texture-by-adding-a-subtle-pattern-as-a-background-image.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-texture-by-adding-a-subtle-pattern-as-a-background-image.chinese.md @@ -23,7 +23,7 @@ localeTitle: 通过添加细微图案作为背景图像来创建纹理 ```yml tests: - text: 'body 元素选择器应包含 background 属性,且值为给定的 url。' - testString: 'assert(code.match(/background:\s*?url\(\s*("|''|)https:\/\/i\.imgur\.com\/MJAkxbh\.png\1\s*\)/gi), ''body 元素选择器应包含 background 属性,且值为给定的 url。'');' + testString: assert(code.match(/background:\s*?url\(\s*("|'|)https:\/\/cdn-media-1\.freecodecamp\.org\/imgr\/MJAkxbh\.png\1\s*\)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-balance-using-the-text-align-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-balance-using-the-text-align-property.chinese.md index 031cb35edf..9cbe0ab1b2 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-balance-using-the-text-align-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-balance-using-the-text-align-property.chinese.md @@ -28,9 +28,9 @@ web 内容大部分都是文本。CSS 里面的 text-align 属性 ```yml tests: - text: '你应该在 h4 标签上使用 text-align 属性设置文本居中对齐。' - testString: assert($('h4').css('text-align') == 'center', '你应该在 h4 标签上使用 text-align 属性设置文本居中对齐。'); + testString: assert($('h4').css('text-align') == 'center'); - text: '你应该在 p 标签上使用 text-align 属性设置文本两端对齐。' - testString: assert($('p').css('text-align') == 'justify', '你应该在 p 标签上使用 text-align 属性设置文本两端对齐。'); + testString: assert($('p').css('text-align') == 'justify'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-direction-by-fading-an-element-from-left-to-right.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-direction-by-fading-an-element-from-left-to-right.chinese.md index 1e514c071b..ce705b686b 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-direction-by-fading-an-element-from-left-to-right.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/create-visual-direction-by-fading-an-element-from-left-to-right.chinese.md @@ -24,7 +24,7 @@ localeTitle: 通过从左到右淡化元素来创建视觉方向 ```yml tests: - text: '50% 处 keyframes 规则应该设置 opacity 属性值为 0.1 以使其渐隐。' - testString: 'assert(code.match(/@keyframes fade\s*?{\s*?50%\s*?{\s*?(?:left:\s*?60%;\s*?opacity:\s*?0?\.1;|opacity:\s*?0?\.1;\s*?left:\s*?60%;)/gi), ''50% 处 keyframes 规则应该设置 opacity 属性值为 0.1 以使其渐隐。'');' + testString: assert(code.match(/@keyframes fade\s*?{\s*?50%\s*?{\s*?(?:left:\s*?60%;\s*?opacity:\s*?0?\.1;|opacity:\s*?0?\.1;\s*?left:\s*?60%;)/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/decrease-the-opacity-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/decrease-the-opacity-of-an-element.chinese.md index 3b315643be..0b9b23f432 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/decrease-the-opacity-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/decrease-the-opacity-of-an-element.chinese.md @@ -25,7 +25,7 @@ CSS 里的 opacity 属性用来设置元素的透明度。 ```yml tests: - text: '你应该使用 links class 选择所有的超链接并设置其 opacity 值为 0.7。' - testString: assert.approximately(parseFloat($('.links').css('opacity')), 0.7, 0.1, '你应该使用 links class 选择所有的超链接并设置其 opacity 值为 0.7。'); + testString: assert(/\.links\s*{([\s\S]*?;)*\s*opacity\s*:\s*0*\.70*\s*(;[\s\S]*?|\s*)}/.test($('style').text())); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-complementary-colors.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-complementary-colors.chinese.md index a87594f491..cda572ac03 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-complementary-colors.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-complementary-colors.chinese.md @@ -28,9 +28,9 @@ localeTitle: 了解互补色 ```yml tests: - text: 'class 为 bluediv 元素应该有值为蓝色的 background-color CSS 属性。' - testString: assert($('.blue').css('background-color') == 'rgb(0, 0, 255)', 'class 为 bluediv 元素应该有值为蓝色的 background-color CSS 属性。'); + testString: assert($('.blue').css('background-color') == 'rgb(0, 0, 255)'); - text: 'class 为 yellowdiv 元素应该有值为黄色的 background-color CSS 属性。' - testString: assert($('.yellow').css('background-color') == 'rgb(255, 255, 0)', 'class 为 yellowdiv 元素应该有值为黄色的 background-color CSS 属性。'); + testString: assert($('.yellow').css('background-color') == 'rgb(255, 255, 0)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-tertiary-colors.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-tertiary-colors.chinese.md index fae726fcf3..46461de4c8 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-tertiary-colors.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-about-tertiary-colors.chinese.md @@ -27,11 +27,11 @@ localeTitle: 了解三原色 ```yml tests: - text: 'class 为 orangediv 应该有值为橙色的 background-color CSS 属性。' - testString: assert($('.orange').css('background-color') == 'rgb(255, 125, 0)', 'class 为 orangediv 应该有值为橙色的 background-color CSS 属性。'); + testString: assert($('.orange').css('background-color') == 'rgb(255, 127, 0)'); - text: 'class 为 cyandiv 应该有值为蓝绿色的 background-color CSS 属性。' - testString: assert($('.cyan').css('background-color') == 'rgb(0, 255, 255)', 'class 为 cyandiv 应该有值为蓝绿色的 background-color CSS 属性。'); + testString: assert($('.cyan').css('background-color') == 'rgb(0, 255, 255)'); - text: 'class 为 raspberrydiv 应该有值为树莓红色的 background-color CSS 属性。' - testString: assert($('.raspberry').css('background-color') == 'rgb(255, 0, 125)', 'class 为 raspberrydiv 应该有值为树莓红色的 background-color CSS 属性。'); + testString: assert($('.raspberry').css('background-color') == 'rgb(255, 0, 127)'); - text: 'corlor classes 里的所有的 background-color 应该是 HEX 颜色码而不是颜色名称。' testString: assert(!/background-color:\s(orange|cyan|raspberry)/.test(code)); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-bezier-curves-work.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-bezier-curves-work.chinese.md index 4f9fd80cf0..dfe9545e89 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-bezier-curves-work.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-bezier-curves-work.chinese.md @@ -27,9 +27,9 @@ localeTitle: 学习贝塞尔曲线的原理 ```yml tests: - text: 'id 为 ball1 的元素的 animation-timing-function 属性值应该为和 linear 预定值等价的贝塞尔函数值。' - testString: assert($('#ball1').css('animation-timing-function') == 'cubic-bezier(0.25, 0.25, 0.75, 0.75)', 'id 为 ball1 的元素的 animation-timing-function 属性应该为和 linear 预定值等价的贝塞尔函数值。'); + testString: assert($('#ball1').css('animation-timing-function') == 'cubic-bezier(0.25, 0.25, 0.75, 0.75)'); - text: 'id 为 ball2 元素的 animation-timing-function 属性值应该保持不变。' - testString: assert($('#ball2').css('animation-timing-function') == 'ease-out', 'id 为 ball2 元素的 animation-timing-function 属性值应该保持不变。'); + testString: const ball2Animation = $('#ball2').css('animation-timing-function').replace(/\s/g, ''); assert(ball2Animation == 'ease-out' || ball2Animation == 'cubic-bezier(0,0,0.58,1)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-the-css-keyframes-and-animation-properties-work.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-the-css-keyframes-and-animation-properties-work.chinese.md index 1352bf52a4..b84013b83e 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-the-css-keyframes-and-animation-properties-work.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/learn-how-the-css-keyframes-and-animation-properties-work.chinese.md @@ -45,17 +45,17 @@ id 为 anim 的元素,代码设置 animation-name ```yml tests: - text: 'id 为 rect 的元素应该有一个值为 rainbow 的 animation-name 属性。' - testString: assert($('#rect').css('animation-name') == 'rainbow', 'id 为 rect 的元素应该有一个值为 rainbow 的 animation-name 属性。'); + testString: assert($('#rect').css('animation-name') == 'rainbow'); - text: 'id 为 rect 的元素应该有一个值为 4s 的 animation-duration 属性。' - testString: assert($('#rect').css('animation-duration') == '4s', 'id 为 rect 的元素应该有一个值为 4s 的 animation-duration 属性。'); + testString: assert($('#rect').css('animation-duration') == '4s'); - text: '@keyframes 规则的 animation-name 应该为 rainbow。' - testString: assert(code.match(/@keyframes\s+?rainbow\s*?{/g), '@keyframes 规则的 animation-name 应该为 rainbow。'); + testString: assert(code.match(/@keyframes\s+?rainbow\s*?{/g)); - text: '@keyframes 规则的 rainbow 在 0% 时的 background-color 应该为蓝色。' - testString: 'assert(code.match(/0%\s*?{\s*?background-color:\s*?blue;\s*?}/gi), ''@keyframes 规则的 rainbow 在 0% 时的 background-color 应该为蓝色。'');' + testString: assert(code.match(/0%\s*?{\s*?background-color:\s*?blue;\s*?}/gi)); - text: '@keyframes 规则的 rainbow 在 50% 时的 background-color 应该为绿色。' - testString: 'assert(code.match(/50%\s*?{\s*?background-color:\s*?green;\s*?}/gi), ''@keyframes 规则的 rainbow 在 50% 时的 background-color 应该为绿色。'');' + testString: assert(code.match(/50%\s*?{\s*?background-color:\s*?green;\s*?}/gi)); - text: '@keyframes 规则的 rainbow 在 100% 时的 background-color 应该为黄色。' - testString: 'assert(code.match(/100%\s*?{\s*?background-color:\s*?yellow;\s*?}/gi), ''@keyframes 规则的 rainbow 在 100% 时的 background-color 应该为黄色。'');' + testString: assert(code.match(/100%\s*?{\s*?background-color:\s*?yellow;\s*?}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-its-parent-with-absolute-positioning.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-its-parent-with-absolute-positioning.chinese.md index ce8da7fad3..ff6d0f57be 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-its-parent-with-absolute-positioning.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-its-parent-with-absolute-positioning.chinese.md @@ -24,11 +24,11 @@ localeTitle: 绝对定位的参照物是元素的父元素 ```yml tests: - text: '#searchbar 元素应当有一个值为 absoluteposition CSS 属性。' - testString: assert($('#searchbar').css('position') == 'absolute', '#searchbar 元素应当有一个值为 absoluteposition CSS 属性。'); + testString: assert($('#searchbar').css('position') == 'absolute'); - text: '你的 #searchbar 元素应当有值为 50pxtop CSS 属性。' - testString: assert($('#searchbar').css('top') == '50px', '你的 #searchbar 元素应当有值为 50pxtop CSS 属性。'); + testString: assert($('#searchbar').css('top') == '50px'); - text: '你的 #searchbar 元素应当有值为 50pxright CSS 属性。' - testString: assert($('#searchbar').css('right') == '50px', '你的 #searchbar 元素应当有值为 50pxright CSS 属性。'); + testString: assert($('#searchbar').css('right') == '50px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-the-browser-window-with-fixed-positioning.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-the-browser-window-with-fixed-positioning.chinese.md index a8a2a5bb8d..3f885ea551 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-the-browser-window-with-fixed-positioning.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/lock-an-element-to-the-browser-window-with-fixed-positioning.chinese.md @@ -24,11 +24,11 @@ localeTitle: 固定定位的参照物是浏览器的窗口 ```yml tests: - text: '>#navbar 元素应当有一个值为 fixedposition CSS 属性' - testString: assert($('#navbar').css('position') == 'fixed', '#navbar 元素应当有一个值为 fixedposition CSS 属性'); + testString: assert($('#navbar').css('position') == 'fixed'); - text: '你的 #navbar 元素应当有值为 0pxtop CSS 属性。' - testString: assert($('#navbar').css('top') == '0px', '你的 #navbar 元素应当有值为 0pxtop CSS 属性。'); + testString: assert($('#navbar').css('top') == '0px'); - text: '你的 #navbar 元素应当有值为 0pxleft CSS 属性。' - testString: assert($('#navbar').css('left') == '0px', '你的 #navbar 元素应当有值为 0pxleft CSS 属性。'); + testString: assert($('#navbar').css('left') == '0px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-a-css-heartbeat-using-an-infinite-animation-count.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-a-css-heartbeat-using-an-infinite-animation-count.chinese.md index 57b5716654..6c44516c08 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-a-css-heartbeat-using-an-infinite-animation-count.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-a-css-heartbeat-using-an-infinite-animation-count.chinese.md @@ -24,9 +24,9 @@ localeTitle: 使用无限的动画计数制作 CSS 心跳 ```yml tests: - text: 'heart class 的 animation-iteration-count 属性应该赋值 infinte。' - testString: assert($('.heart').css('animation-iteration-count') == 'infinite', 'heart class 的 animation-iteration-count 属性应该赋值 infinite。'); + testString: assert($('.heart').css('animation-iteration-count') == 'infinite'); - text: 'back class 的 animation-iteration-count 属性应该赋值 infinite。' - testString: assert($('.back').css('animation-iteration-count') == 'infinite', 'back class 的 animation-iteration-count 属性应该赋值 infinite。'); + testString: assert($('.back').css('animation-iteration-count') == 'infinite'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-motion-more-natural-using-a-bezier-curve.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-motion-more-natural-using-a-bezier-curve.chinese.md index 65c240272d..9704869af8 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-motion-more-natural-using-a-bezier-curve.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/make-motion-more-natural-using-a-bezier-curve.chinese.md @@ -27,7 +27,7 @@ localeTitle: 使用贝塞尔曲线让运动更加自然 ```yml tests: - text: 'id 为green的元素的animation-timing-function值应该为cubic-bezier函数,函数的参数 x1,y1,x2,y2 值依次为 0.311、0.441、0.444、1.649。' - testString: assert($('#green').css('animation-timing-function') == 'cubic-bezier(0.311, 0.441, 0.444, 1.649)', 'id 为green的元素的animation-timing-function值应该为cubic-bezier函数,函数的参数 x1,y1,x2,y2 值依次为 0.311、0.441、0.444、1.649。'); + testString: assert($('#green').css('animation-timing-function') == 'cubic-bezier(0.311, 0.441, 0.444, 1.649)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/modify-fill-mode-of-an-animation.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/modify-fill-mode-of-an-animation.chinese.md index e9be35badf..8b0e887ca7 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/modify-fill-mode-of-an-animation.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/modify-fill-mode-of-an-animation.chinese.md @@ -25,7 +25,7 @@ localeTitle: 修改动画的填充模式 ```yml tests: - text: 'button:hover 应该有一个值为 forwardsanimation-fill-mode 的属性。' - testString: 'assert(code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-fill-mode\s*?:\s*?forwards\s*?;[\s\S]*}/gi) && code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-name\s*?:\s*?background-color\s*?;[\s\S]*}/gi) && code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-duration\s*?:\s*?500ms\s*?;[\s\S]*}/gi), ''button:hover 应该有一个值为 forwardsanimation-fill-mode 的属性。'');' + testString: assert(code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-fill-mode\s*?:\s*?forwards\s*?;[\s\S]*}/gi) && code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-name\s*?:\s*?background-color\s*?;[\s\S]*}/gi) && code.match(/button\s*?:\s*?hover\s*?{[\s\S]*animation-duration\s*?:\s*?500ms\s*?;[\s\S]*}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/move-a-relatively-positioned-element-with-css-offsets.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/move-a-relatively-positioned-element-with-css-offsets.chinese.md index b4562d0adf..cf077c079d 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/move-a-relatively-positioned-element-with-css-offsets.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/move-a-relatively-positioned-element-with-css-offsets.chinese.md @@ -24,9 +24,9 @@ CSS 里面的 topbottomlefth2 相对当前位置向上移动 10px。也就是说,从 h2 当前位置远离 bottom 10px。' - testString: assert($('h2').css('bottom') == '10px', '你应该使用 CSS 属性使 h2 相对当前位置向上移动 10px。也就是说,从 h2 当前位置远离 bottom 10px。'); + testString: assert($('h2').css('bottom') == '10px'); - text: '你应该使用 CSS 属性使 h2 相对当前位置向右移动 15px。也就是说,从 h2 当前位置远离 left 15px。' - testString: assert($('h2').css('left') == '15px', '你应该使用 CSS 属性使 h2 相对当前位置向右移动 15px。也就是说,从 h2 当前位置远离left 15px。'); + testString: assert($('h2').css('left') == '15px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/push-elements-left-or-right-with-the-float-property.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/push-elements-left-or-right-with-the-float-property.chinese.md index f5463fc6b2..ebdcdc2140 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/push-elements-left-or-right-with-the-float-property.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/push-elements-left-or-right-with-the-float-property.chinese.md @@ -23,9 +23,9 @@ localeTitle: 使用 float 属性将元素左浮动或右浮动 ```yml tests: - text: 'id 为 left 的元素应该有一个值为 leftfloat CSS 属性。' - testString: assert($('#left').css('float') == 'left', 'id 为 left 的元素应该有一个值为 leftfloat CSS 属性。'); + testString: assert($('#left').css('float') == 'left'); - text: 'id 为 right 的元素应该有一个值为 rightfloat CSS 属性。' - testString: assert($('#right').css('float') == 'right', 'id 为 right 的元素应该有一个值为 rightfloat CSS 属性。'); + testString: assert($('#right').css('float') == 'right'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-for-multiple-heading-elements.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-for-multiple-heading-elements.chinese.md index c989ebe735..99ea9dfb5b 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-for-multiple-heading-elements.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-for-multiple-heading-elements.chinese.md @@ -23,17 +23,17 @@ localeTitle: 设置多个标题元素的 font-size ```yml tests: - text: '你应该设置 h1 标签的 font-size68px。' - testString: assert($('h1').css('font-size') == '68px', '你应该设置 h1 标签的 font-size68px。'); + testString: assert($('h1').css('font-size') == '68px'); - text: '你应该设置 h2 标签的 font-size52px。' - testString: assert($('h2').css('font-size') == '52px', '你应该设置h2标签的font-size52px。'); + testString: assert($('h2').css('font-size') == '52px'); - text: '你应该设置 h3 标签的 font-size40px。' - testString: assert($('h3').css('font-size') == '40px', '你应该设置 h3 标签的 font-size40px。'); + testString: assert($('h3').css('font-size') == '40px'); - text: '你应该设置 h4 标签的 font-size32px。' - testString: assert($('h4').css('font-size') == '32px', '你应该设置 h4 标签的 font-size32px。'); + testString: assert($('h4').css('font-size') == '32px'); - text: '你应该设置 h5 标签的 font-size21px。' - testString: assert($('h5').css('font-size') == '21px', '你应该设置 h6 标签的 font-size21px。'); + testString: assert($('h5').css('font-size') == '21px'); - text: '你应该设置 h6 标签的 font-size14px。' - testString: assert($('h6').css('font-size') == '14px', '你应该设置 h6 标签的 font-size14px。'); + testString: assert($('h6').css('font-size') == '14px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-of-paragraph-text.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-of-paragraph-text.chinese.md index 406be9f37b..53e6a780e4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-of-paragraph-text.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-size-of-paragraph-text.chinese.md @@ -23,7 +23,7 @@ CSS 里面的 font-size 属性不只限于标题,它可以应用 ```yml tests: - text: '你的 p 标签应该包含一个 font-size 属性并且值为 16px。' - testString: assert($('p').css('font-size') == '16px', '你的 p 标签应该包含一个 font-size 属性并且值为 16px。'); + testString: assert($('p').css('font-size') == '16px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-weight-for-multiple-heading-elements.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-weight-for-multiple-heading-elements.chinese.md index 6403cd7898..09e83b2d73 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-weight-for-multiple-heading-elements.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-font-weight-for-multiple-heading-elements.chinese.md @@ -24,17 +24,17 @@ localeTitle: 设置多个标题元素的 font-weight ```yml tests: - text: '你应该设置 h1 标签的 font-weight 为 800。' - testString: assert($('h1').css('font-weight') == '800', '你应该设置 h1 标签的 font-weight 为 800。'); + testString: assert($('h1').css('font-weight') == '800'); - text: '你应该设置 h2 标签的 font-weight 为 600。' - testString: assert($('h2').css('font-weight') == '600', '你应该设置 h2 标签的 font-weight 为 600。'); + testString: assert($('h2').css('font-weight') == '600'); - text: '你应该设置 h3 标签的 font-weight 为 500。' - testString: assert($('h3').css('font-weight') == '500', '你应该设置 h3 标签的 font-weight 为 500。'); + testString: assert($('h3').css('font-weight') == '500'); - text: '你应该设置 h4 标签的 font-weight 为 400。' - testString: assert($('h4').css('font-weight') == '400', '你应该设置 h4 标签的 font-weight 为 400。'); + testString: assert($('h4').css('font-weight') == '400'); - text: '你应该设置 h5 标签的 font-weight 为 300。' - testString: assert($('h5').css('font-weight') == '300', '你应该设置 h5 标签的 font-weight 为 300。'); + testString: assert($('h5').css('font-weight') == '300'); - text: '你应该设置 h6 标签的 font-weight 为 200。' - testString: assert($('h6').css('font-weight') == '200', '你应该设置 h6 标签的 font-weight 为 200。'); + testString: assert($('h6').css('font-weight') == '200'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-line-height-of-paragraphs.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-line-height-of-paragraphs.chinese.md index 69f90e84cf..2e527c25aa 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-line-height-of-paragraphs.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/set-the-line-height-of-paragraphs.chinese.md @@ -23,7 +23,7 @@ CSS 提供 line-height 属性来设置行间的距离。行高, ```yml tests: - text: '你应该给 p 标签添加 line-height 属性并赋值 25px。' - testString: assert($('p').css('line-height') == '25px', '你应该给 p 标签添加 line-height 属性并赋值 25px。'); + testString: assert($('p').css('line-height') == '25px'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-bezier-curve-to-move-a-graphic.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-bezier-curve-to-move-a-graphic.chinese.md index 4b8fb6ee58..c7f46a65ae 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-bezier-curve-to-move-a-graphic.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-bezier-curve-to-move-a-graphic.chinese.md @@ -26,11 +26,11 @@ localeTitle: 使用贝塞尔曲线移动图形 ```yml tests: - text: 'id 为 red 的元素的 animation-timing-function 属性应当赋为 cubic-bezier 函数,其中 x1,y1,x2,y2 值分别为 0,0,0.58,1。' - testString: assert($('#red').css('animation-timing-function') == 'cubic-bezier(0, 0, 0.58, 1)', 'id 为 red 的元素的 animation-timing-function 属性应当赋为 cubic-bezier 函数,其中 x1,y1,x2,y2 值分别为 0,0,0.58,1。'); + testString: assert($('#red').css('animation-timing-function') == 'cubic-bezier(0, 0, 0.58, 1)'); - text: 'id 为 red 的元素的 animation-timing-function 属性不应该取值 linear。' - testString: assert($('#red').css('animation-timing-function') !== 'linear', 'id 为 red 的元素的 animation-timing-function 属性不应该取值 linear。'); + testString: assert($('#red').css('animation-timing-function') !== 'linear'); - text: 'id 为 blue 的元素的 animation-timing-function 属性不应该被改变。' - testString: assert($('#blue').css('animation-timing-function') == 'ease-out', 'id 为 blue 的元素的 animation-timing-function 属性不应该被改变。'); + testString: const blueBallAnimation = $('#blue').css('animation-timing-function').replace(/\s/g, ''); assert(blueBallAnimation == 'ease-out' || blueBallAnimation == 'cubic-bezier(0,0,0.58,1)'); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-css-linear-gradient-to-create-a-striped-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-css-linear-gradient-to-create-a-striped-element.chinese.md index 3f6bd1f342..6da5db0074 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-css-linear-gradient-to-create-a-striped-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-a-css-linear-gradient-to-create-a-striped-element.chinese.md @@ -28,17 +28,17 @@ localeTitle: 使用 CSS 线性渐变创建条纹元素 ```yml tests: - text: 'repeating-linear-gradient() 的渐变角度应该为 45deg。' - testString: 'assert(code.match(/background:\s*?repeating-linear-gradient\(\s*?45deg/gi), ''repeating-linear-gradient() 的渐变角度应该为 45deg。'');' + testString: assert(code.match(/background:\s*?repeating-linear-gradient\(\s*?45deg/gi)); - text: 'repeating-linear-gradient() 的渐变角度应该不在是 90deg。' - testString: assert(!code.match(/90deg/gi), 'repeating-linear-gradient() 的渐变角度不应该是 90deg。'); + testString: assert(!code.match(/90deg/gi)); - text: '0px 处的渐变颜色应该为 yellow。' - testString: assert(code.match(/yellow\s+?0px/gi), '0px 处的渐变颜色应该为 yellow。'); + testString: assert(code.match(/yellow\s+?0(px)?/gi)); - text: '40px 处的第一个渐变颜色应该为 yellow。' - testString: assert(code.match(/yellow\s+?40px/gi), '40px 处的第一个渐变颜色应该为 yellow。'); + testString: assert(code.match(/yellow\s+?40px/gi)); - text: '40px 处的第二个渐变颜色应该为 black。' - testString: assert(code.match(/yellow\s+?40px,\s*?black\s+?40px/gi), '40px 处的第二个渐变颜色应该为 black。'); + testString: assert(code.match(/yellow\s+?40px,\s*?black\s+?40px/gi)); - text: '80px 处最后一个渐变颜色应该为 black。' - testString: assert(code.match(/black\s+?80px/gi), '80px 处最后一个渐变颜色应该为 black。'); + testString: assert(code.match(/black\s+?80px/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-css-animation-to-change-the-hover-state-of-a-button.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-css-animation-to-change-the-hover-state-of-a-button.chinese.md index 4688c4d852..2f1ba84c66 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-css-animation-to-change-the-hover-state-of-a-button.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-css-animation-to-change-the-hover-state-of-a-button.chinese.md @@ -43,9 +43,9 @@ localeTitle: 使用CSS动画更改按钮的悬停状态 ```yml tests: - text: '@keyframes 规则的 animation-name 应该是 background-color。' - testString: assert(code.match(/@keyframes\s+?background-color\s*?{/g), '@keyframes 规则的 animation-name 应该是 background-color。'); + testString: assert(code.match(/@keyframes\s+?background-color\s*?{/g)); - text: '在 @keyframes100% 条目里应该把 background-color 改成 #4791d0。' - testString: 'assert(code.match(/100%\s*?{\s*?background-color:\s*?#4791d0;\s*?}/gi), ''在 @keyframes100% 条目里应该把 background-color 改成 #4791d0。'');' + testString: assert(code.match(/100%\s*?{\s*?background-color:\s*?#4791d0;\s*?}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.chinese.md index 3a4b88d491..57de562810 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.chinese.md @@ -31,7 +31,7 @@ p { ```yml tests: - text: 'id 为 bottom 的元素应该沿着 X 轴翻转 24 度。' - testString: 'assert(code.match(/#bottom\s*?{\s*?.*?\s*?transform:\s*?skewX\(24deg\);/g), ''id 为 bottom 的元素应该沿着 X 轴翻转 24 度。'');' + testString: assert(code.match(/#bottom\s*?{\s*?.*?\s*?transform:\s*?skewX\(24deg\);/g)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.chinese.md index 6099afe294..2c02f55f68 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.chinese.md @@ -23,7 +23,7 @@ localeTitle: 使用 CSS Transform skex 属性沿Y轴倾斜元素 ```yml tests: - text: 'id 为 top 的元素应该沿着 Y 轴翻转 -10 度。' - testString: 'assert(code.match(/#top\s*?{\s*?.*?\s*?transform:\s*?skewY\(-10deg\);/g), ''id 为 top 的元素应该沿着 Y 轴翻转 -10 度。'');' + testString: assert(code.match(/#top\s*?{\s*?.*?\s*?transform:\s*?skewY\(-10deg\);/g)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-change-the-size-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-change-the-size-of-an-element.chinese.md index 05c2f636e9..1d6c34ba04 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-change-the-size-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-change-the-size-of-an-element.chinese.md @@ -30,7 +30,7 @@ p { ```yml tests: - text: '#ball2transform 属性应该为原始大小的 1.5 倍。' - testString: 'assert(code.match(/#ball2\s*?{\s*?left:\s*?65%;\s*?transform:\s*?scale\(1\.5\);\s*?}|#ball2\s*?{\s*?transform:\s*?scale\(1\.5\);\s*?left:\s*?65%;\s*?}/gi), ''#ball2transform 属性应该为原始大小的 1.5 倍。'');' + testString: assert(code.match(/#ball2\s*?{\s*?left:\s*?65%;\s*?transform:\s*?scale\(1\.5\);\s*?}|#ball2\s*?{\s*?transform:\s*?scale\(1\.5\);\s*?left:\s*?65%;\s*?}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-scale-an-element-on-hover.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-scale-an-element-on-hover.chinese.md index 0d05dfdf0f..1267652b5d 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-scale-an-element-on-hover.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-css-transform-scale-property-to-scale-an-element-on-hover.chinese.md @@ -33,7 +33,7 @@ p:hover { ```yml tests: - text: 'div 元素在悬停时大小应该缩放到原始大小的 1.1 倍。' - testString: 'assert(code.match(/div:hover\s*?{\s*?transform:\s*?scale\(1\.1\);/gi), ''div 元素在悬停时大小应该缩放到原始大小的 1.1 倍。'');' + testString: assert(code.match(/div:hover\s*?{\s*?transform:\s*?scale\(1\.1\);/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-em-tag-to-italicize-text.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-em-tag-to-italicize-text.chinese.md index ffd34626f6..a3b17e27f4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-em-tag-to-italicize-text.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-em-tag-to-italicize-text.chinese.md @@ -24,9 +24,9 @@ localeTitle: 使用 em 标签强调文本 ```yml tests: - text: '你应该添加一个 em 标签。' - testString: assert($('em').length == 1, '你应该添加一个 em 标签。'); + testString: assert($('em').length == 1); - text: 'em 标签应该嵌套在 p 标签里面。' - testString: assert($('p').children().length == 1 && $('em').children().length == 2, 'em 标签应该嵌套在 p 标签里面。'); + testString: assert($('p').children().length == 1 && $('em').children().length == 2); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-s-tag-to-strikethrough-text.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-s-tag-to-strikethrough-text.chinese.md index 4ca03cadff..ca23172aa9 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-s-tag-to-strikethrough-text.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-s-tag-to-strikethrough-text.chinese.md @@ -24,11 +24,11 @@ localeTitle: 使用 s 标签给文本添加删除线 ```yml tests: - text: '你应该添加一个 s 标签。' - testString: assert($('s').length == 1, '你应该添加一个s标签。'); + testString: assert($('s').length == 1); - text: ' s 标签应该在 h4 标签内的 Google 文字外面,它不应该包含单词 Alphabet。' - testString: assert($('s').text().match(/Google/gi) && !$('s').text().match(/Alphabet/gi), 's 标签应该在 h4 标签内的 Google 文字外面,它不应该包含单词 Alphabet。'); + testString: assert($('h4 > s').text().match(/Google/gi) && !$('h4 > s').text().match(/Alphabet/gi)); - text: 'h4 标签内应该有单词 Alphabet,Alphabet 应该没有删除线样式。' - testString: assert($('h4').html().match(/Alphabet/gi), 'h4 标签内应该有单词 Alphabet,Alphabet 应该没有删除线样式。'); + testString: assert($('h4').html().match(/Alphabet/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-strong-tag-to-make-text-bold.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-strong-tag-to-make-text-bold.chinese.md index d3f35ed73e..d43fd0949b 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-strong-tag-to-make-text-bold.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-strong-tag-to-make-text-bold.chinese.md @@ -24,11 +24,11 @@ localeTitle: 使用 strong 标签加粗文本 ```yml tests: - text: '你应该有一个 strong 标签。' - testString: assert($('strong').length == 1, '你应该有一个 strong 标签。'); + testString: assert($('strong').length == 1); - text: 'strong 标签应该在 p 标签里。' - testString: assert($('p').children('strong').length == 1, 'strong 标签应该在 p 标签里。'); + testString: assert($('p').children('strong').length == 1); - text: 'strong 标签应该包围 “斯坦福大学”。' - testString: assert($('strong').text().match(/^斯坦福大学$/gi), 'strong 标签应该包围 “斯坦福大学”。'); + testString: assert($('strong').text().match(/^Stanford University$/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-text-transform-property-to-make-text-uppercase.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-text-transform-property-to-make-text-uppercase.chinese.md index 9667d6e060..7875ee58e0 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-text-transform-property-to-make-text-uppercase.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-text-transform-property-to-make-text-uppercase.chinese.md @@ -25,9 +25,9 @@ CSS 里面的 text-transform 属性来改变英文中字母的大 ```yml tests: - text: 'h4 内的英文的所有字母应该为大写。' - testString: assert($('h4').css('text-transform') === 'uppercase', 'h4 内的英文的所有字母应该为大写。'); + testString: assert($('h4').css('text-transform') === 'uppercase'); - text: 'h4 内的原文不能被改变。' - testString: assert(($('h4').text() !== $('h4').text().toUpperCase()), 'h4 内的原文不能被改变。'); + testString: assert(($('h4').text() !== $('h4').text().toUpperCase())); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-borders-around-your-elements.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-borders-around-your-elements.chinese.md index 086596bea1..a1780e17e4 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-borders-around-your-elements.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-borders-around-your-elements.chinese.md @@ -120,5 +120,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-different-padding-to-each-side-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-different-padding-to-each-side-of-an-element.chinese.md index c842b02622..5f43a585f3 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-different-padding-to-each-side-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-different-padding-to-each-side-of-an-element.chinese.md @@ -94,5 +94,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-rounded-corners-with-border-radius.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-rounded-corners-with-border-radius.chinese.md index a5454b1514..eaf97f77b9 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-rounded-corners-with-border-radius.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/add-rounded-corners-with-border-radius.chinese.md @@ -26,7 +26,7 @@ tests: - text: '图片元素应具有 "thick-green-border" class 属性。' testString: assert($("img").hasClass("thick-green-border")); - text: '图片应含有10px的边框圆角。' - testString: assert(parseInt($("img").css("border-top-left-radius")) > 8); + testString: assert($("img").css("border-top-left-radius") === '10px' && $("img").css("border-top-right-radius") === '10px' && $("img").css("border-bottom-left-radius") === '10px' && $("img").css("border-bottom-right-radius") === '10px'); ``` @@ -109,5 +109,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/adjust-the-margin-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/adjust-the-margin-of-an-element.chinese.md index 597c6f80c5..3f1a4db583 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/adjust-the-margin-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/adjust-the-margin-of-an-element.chinese.md @@ -86,7 +86,7 @@ tests: ## Solution

-```js +```html // solution required ```
diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/attach-a-fallback-value-to-a-css-variable.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/attach-a-fallback-value-to-a-css-variable.chinese.md index 1d11c180e4..dcfd7740d7 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/attach-a-fallback-value-to-a-css-variable.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/attach-a-fallback-value-to-a-css-variable.chinese.md @@ -32,9 +32,9 @@ background: var(--penguin-skin, black); ```yml tests: - text: 'penguin-top class 的background属性应设置一个black备用颜色。' - testString: 'assert(code.match(/.penguin-top\s*?{[\s\S]*background\s*?:\s*?var\(\s*?--pengiun-skin\s*?,\s*?black\s*?\)\s*?;[\s\S]*}[\s\S]*.penguin-bottom\s{/gi));' + testString: assert(code.match(/.penguin-top\s*?{[\s\S]*background\s*?:\s*?var\(\s*?--pengiun-skin\s*?,\s*?black\s*?\)\s*?;[\s\S]*}[\s\S]*.penguin-bottom\s{/gi)); - text: 'penguin-bottom class 的background属性应设置一个black备用颜色。' - testString: 'assert(code.match(/.penguin-bottom\s*?{[\s\S]*background\s*?:\s*?var\(\s*?--pengiun-skin\s*?,\s*?black\s*?\)\s*?;[\s\S]*}/gi));' + testString: assert(code.match(/.penguin-bottom\s*?{[\s\S]*background\s*?:\s*?var\(\s*?--pengiun-skin\s*?,\s*?black\s*?\)\s*?;[\s\S]*}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-a-variable-for-a-specific-area.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-a-variable-for-a-specific-area.chinese.md index 5ae51176cf..2a3a2dcfe0 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-a-variable-for-a-specific-area.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-a-variable-for-a-specific-area.chinese.md @@ -25,7 +25,7 @@ localeTitle: 更改特定区域的变量 ```yml tests: - text: '应该在penguinclas 里重定义--penguin-belly的变量值,且它的值为white。' - testString: 'assert(code.match(/.penguin\s*?{[\s\S]*--penguin-belly\s*?:\s*?white\s*?;[\s\S]*}/gi));' + testString: assert(code.match(/.penguin\s*?{[\s\S]*--penguin-belly\s*?:\s*?white\s*?;[\s\S]*}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-color-of-text.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-color-of-text.chinese.md index 72e3afa499..2acc235d94 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-color-of-text.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-color-of-text.chinese.md @@ -27,9 +27,9 @@ localeTitle: 更改文本的颜色 ```yml tests: - text: 'h2元素应该为红色。' - testString: assert($("h2").css("color") === "rgb(255, 0, 0)"); + testString: assert($("h2").attr('style')); - text: 'h2元素的style属性值应该以;结束。' - testString: 'assert(code.match(/\s*CatPhotoApp\s*<\/h2>/));' + testString: assert($("h2").css("color") === "rgb(255, 0, 0)"); - text: 'style 声明应该以 ; 结尾' testString: assert($("h2").attr('style') && $("h2").attr('style').endsWith(';')); @@ -88,5 +88,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-font-size-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-font-size-of-an-element.chinese.md index 910042229b..94a33555a0 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-font-size-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/change-the-font-size-of-an-element.chinese.md @@ -30,7 +30,7 @@ h1 { ```yml tests: - text: '在style样式声明区域里,p元素的font-size的值应为16px,浏览器和文本缩放应设置为 100%。' - testString: 'assert(code.match(/p\s*{\s*font-size\s*:\s*16\s*px\s*;\s*}/i));' + testString: assert(code.match(/p\s*{\s*font-size\s*:\s*16\s*px\s*;\s*}/i)); ``` @@ -93,5 +93,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/create-a-custom-css-variable.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/create-a-custom-css-variable.chinese.md index 35766529a7..d1218b2c8a 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/create-a-custom-css-variable.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/create-a-custom-css-variable.chinese.md @@ -30,7 +30,7 @@ localeTitle: 创建一个自定义的 CSS 变量 ```yml tests: - text: 'penguin class 里应声明--penguin-skin变量,且赋值为gray。' - testString: 'assert(code.match(/.penguin\s*?{[\s\S]*--penguin-skin\s*?:\s*?gray\s*?;[\s\S]*}/gi));' + testString: assert(code.match(/.penguin\s*?{[\s\S]*--penguin-skin\s*?:\s*?gray\s*?;[\s\S]*}/gi)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/import-a-google-font.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/import-a-google-font.chinese.md index b4adc29fb0..6cc5f64d69 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/import-a-google-font.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/import-a-google-font.chinese.md @@ -30,11 +30,11 @@ localeTitle: 引入谷歌字体 ```yml tests: - text: '引入Lobster字体。' - testString: assert(new RegExp("gdgdocs|googleapis", "gi").test(code)); + testString: assert(new RegExp("googleapis", "gi").test(code)); - text: 'h2元素必须使用Lobster字体。' testString: assert($("h2").css("font-family").match(/lobster/i)); - text: '使用h2选择器去改变字体样式。' - testString: 'assert(/\s*h2\s*\{\s*font-family\:\s*(\''|")?Lobster(\''|")?\s*;\s*\}/gi.test(code));' + testString: 'assert(/\s*h2\s*\{\s*font-family\:\s*(\"|")?Lobster(\"|")?(.{0,})\s*;\s*\}/gi.test(code));' - text: 'p元素应该保持使用monospace字体。' testString: assert($("p").css("font-family").match(/monospace/i)); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/inherit-styles-from-the-body-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/inherit-styles-from-the-body-element.chinese.md index 29ca58034f..0d1289291e 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/inherit-styles-from-the-body-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/inherit-styles-from-the-body-element.chinese.md @@ -30,7 +30,7 @@ tests: - text: 'h1元素的文本内容应该为Hello World。' testString: assert(($("h1").length > 0 && $("h1").text().match(/hello world/i))); - text: '确保h1元素具有结束标记。' - testString: assert(code.match(/<\/h1>/g) && code.match(/

/g).length === code.match(/

h1元素具有结束标记。'); + testString: assert(code.match(/<\/h1>/g) && code.match(/

/g).length === code.match(/

body元素的color属性值应为green。' testString: assert(($("body").css("color") === "rgb(0, 128, 0)")); - text: 'body元素的font-family属性值应为monospace。' @@ -70,5 +70,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/make-circular-images-with-a-border-radius.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/make-circular-images-with-a-border-radius.chinese.md index bf2eba8539..bede6ced48 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/make-circular-images-with-a-border-radius.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/make-circular-images-with-a-border-radius.chinese.md @@ -25,7 +25,7 @@ tests: - text: '你图片的边框圆角应设置为50%,让它看起来就像一个完整的圆。' testString: assert(parseInt($("img").css("border-top-left-radius")) > 48); - text: '请确保百分值为50%。' - testString: assert(code.match(/50%/g), '请确保百分值为50%。'); + testString: assert(code.match(/50%/g)); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/override-all-other-styles-by-using-important.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/override-all-other-styles-by-using-important.chinese.md index 07e2b71d0f..f582228a22 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/override-all-other-styles-by-using-important.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/override-all-other-styles-by-using-important.chinese.md @@ -35,9 +35,9 @@ tests: - text: 'h1元素应该包含一个名为orange-text的id。' testString: assert($("h1").attr("id") === "orange-text"); - text: 'h1元素应该包含color: white的行内样式声明。' - testString: 'assert(code.match(/pink-text class 声明应该含有!important关键字。' - testString: 'assert(code.match(/\.pink-text\s*?\{[\s\S]*?color:.*pink.*!important\s*;?[^\.]*\}/g));' + testString: assert(code.match(/\.pink-text\s*?\{[\s\S]*?color:.*pink.*!important\s*;?[^\.]*\}/g)); - text: 'h1元素的字体颜色应该为粉色。' testString: assert($("h1").css("color") === "rgb(255, 192, 203)"); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/prioritize-one-style-over-another.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/prioritize-one-style-over-another.chinese.md index c3a15e8cf7..f7ef5ab770 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/prioritize-one-style-over-another.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/prioritize-one-style-over-another.chinese.md @@ -28,7 +28,7 @@ tests: - text: 'h1元素应该含有pink-text class。' testString: assert($("h1").hasClass("pink-text")); - text: '<style>标签应该含有一个可以改变字体颜色的pink-text class。' - testString: 'assert(code.match(/\.pink-text\s*\{\s*color\s*:\s*.+\s*;\s*\}/g));' + testString: assert(code.match(/\.pink-text\s*\{\s*color\s*:\s*.+\s*;\s*\}/g)); - text: 'h1元素的字体颜色应该为pink(粉色)。' testString: assert($("h1").css("color") === "rgb(255, 192, 203)"); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/set-the-id-of-an-element.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/set-the-id-of-an-element.chinese.md index da842d92b2..58509eb689 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/set-the-id-of-an-element.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/set-the-id-of-an-element.chinese.md @@ -115,5 +115,6 @@ tests: ```html // solution required ``` + \ No newline at end of file diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.chinese.md index 39905bb0c5..e8727b3457 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.chinese.md @@ -34,7 +34,7 @@ CSS 的width属性可以控制元素的宽度。图片的widt ```yml tests: - text: 'img元素应该含有smaller-image class。' - testString: 'assert($("img[src=''https://bit.ly/fcc-relaxing-cat'']").attr(''class'') === "smaller-image");' + testString: assert($("img[src='https://bit.ly/fcc-relaxing-cat']").attr('class') === "smaller-image"); - text: '图片宽度应为 100px(像素),且浏览器缩放应为默认 100%。' testString: assert($("img").width() === 100); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/specify-how-fonts-should-degrade.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/specify-how-fonts-should-degrade.chinese.md index 0eacb1a9fb..6d5dfd737d 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/specify-how-fonts-should-degrade.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/specify-how-fonts-should-degrade.chinese.md @@ -37,7 +37,7 @@ tests: - text: 'h2元素应该含有Lobster字体。' testString: assert($("h2").css("font-family").match(/^"?lobster/i)); - text: '当Lobster字体失效时,h2元素应该降级使用monospace字体。' - testString: 'assert(/\s*h2\s*\{\s*font-family\:\s*(\''|")?Lobster(\''|")?,\s*monospace\s*;\s*\}/gi.test(code));' + testString: assert(/\s*h2\s*\{\s*font-family\:\s*(\'|")?Lobster(\'|")?,\s*monospace\s*;\s*\}/gi.test(code)); - text: '通过添加<!--,注释掉谷歌Lobster字体的引入。' testString: assert(new RegExp("/g).length > 1); - text: '不要更改h1元素、h2 元素、p元素的顺序。' - testString: assert((code.match(/<([a-z0-9]){1,2}>/g)[0]==="

" && code.match(/<([a-z0-9]){1,2}>/g)[1]==="

" && code.match(/<([a-z0-9]){1,2}>/g)[2]==="

")); + testString: assert((code.match(/<([a-z0-9]){1,2}>/g)[0]==="

" && code.match(/<([a-z0-9]){1,2}>/g)[1]==="

" && code.match(/<([a-z0-9]){1,2}>/g)[2]==="

") ); ``` diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-checkboxes.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-checkboxes.chinese.md index c9070bc739..8898584be1 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-checkboxes.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-checkboxes.chinese.md @@ -31,11 +31,11 @@ tests: - text: '表单应该有三个复选框。' testString: assert($('input[type="checkbox"]').length > 2); - text: '每个复选框都应该被嵌套进label元素中。' - testString: 'assert($(''label > input[type="checkbox"]:only-child'').length > 2);' + testString: assert($('label > input[type="checkbox"]:only-child').length > 2); - text: '确保label元素有结束标记。' testString: assert(code.match(/<\/label>/g) && code.match(/属性均为personality。' - testString: assert($('label > input[type="checkbox"]').filter("[name='personality']").length > 2); + testString: assert($('label > input[type="checkbox"]').filter('[name="personality"]').length > 2); - text: '每个复选框都应该在 form 标签内。' testString: assert($('label').parent().get(0).tagName.match('FORM')); diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-radio-buttons.chinese.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-radio-buttons.chinese.md index 39ef131e32..8659dc0053 100644 --- a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-radio-buttons.chinese.md +++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/create-a-set-of-radio-buttons.chinese.md @@ -44,9 +44,9 @@ tests: - text: '页面上应该有两个单选按钮元素。' testString: assert($('input[type="radio"]').length > 1); - text: '设置单选按钮的name属性为indoor-outdoor。' - testString: assert($('label > input[type="radio"]').filter("[name='indoor-outdoor']").length > 1); + testString: assert($('input[type="radio"]').filter("[name='indoor-outdoor']").length > 1); - text: '每一个单选按钮都应该嵌套进它自己的label元素中。' - testString: 'assert($(''label > input[type="radio"]:only-child'').length > 1);' + testString: assert($('label > input[type="radio"]:only-child').length > 1); - text: '每一个label元素都有结束标记。' testString: assert((code.match(/<\/label>/g) && code.match(/