2016-03-04 6 views
6

Stavo facendo un test in upwork. Ci ho ricevuto la seguente domanda:Come funzionano le proprietà text-replace in css?

Si consideri il seguente codice:

body{text-replace: "a" "b" "b" "c"} 

Quale sarà l'uscita del seguente stringa se il testo sostituire stile è implementato?

Andy vive dietro caffè


  1. vita NDY dietro cbfe
  2. vita cndy cehind ccfe
  3. Andy vive dietro caffè
  4. Andy vive cehind BaFe

Non ho trovato alcun riferimento per la proprietà text-replace in css.

+0

Non ho mai sentito parlare di questo. [Su riferimento CSS di Mozilla] (https://developer.mozilla.org/en-US/docs/Web/CSS/Reference) Non riesco a trovare questa proprietà –

+0

Bene si mostra su google, 3: nd hit .. https://www.google.com/search?q=text-replace%3A&oq=text-replace%3A&aqs=chrome..69i57j69i58&sourceid=chrome&ie=UTF-8#q=%22text-replace%22+css – LGSon

+0

@ LGSon Grazie per il tuo tentativo. Stavo cercando 'text-replace css' ma hai cercato come' "text-replace" css' che conta davvero. Grazie ancora. –

risposta

18

Wow! Sei incappato in una proprietà che era l'ultima nel 2007 GCPM specification e rimossa nella revisione del 2010. E in un test online! O il test che stai prendendo è obsoleto da diversi anni, o chiunque lo abbia impostato stava semplicemente prendendo le vecchie revisioni casuali delle specifiche del W3C e considerandole tutte pertinenti (come è noto che gli utenti fanno qui su Stack Overflow).

A causa di quanto sia esoterico, risponderò alla domanda. Inutile dire che questa risposta è fornita solo a scopo didattico. Lì non ètext-replace proprietà in alcuna specifica CSS corrente e non esiste da quasi un decennio (né in css-contentcss-gcpm). Non metterlo nel tuo CSS e aspettarti che funzioni. Non lo farà. Se è necessario eseguire sostituzioni di testo in un documento HTML, utilizzare JavaScript.


La risposta è # 2: "Le vite cndy cehind ccfe"

Il campione esatto CSS appare nelle specifiche, linkato sopra, e l'esempio è descritto come segue (sottolineatura mia):

Le due regole seguenti danno lo stesso risultato. Nella prima regola tutti i caratteri 'a' vengono convertiti in 'b'. Successivamente, tutti i caratteri "b" vengono convertiti in "c". Nella seconda regola, tutti i caratteri 'a' e 'b' vengono convertiti direttamente in 'c'.

body { text-replace: "a" "b" "b" "c" } 
body { text-replace: "a" "c" "b" "c" } 

Così l'ordine di elaborazione va:

  1. Andy vive dietro caffè
  2. b vita NDY dietro c b fe
  3. c ndy vive c ehind c c fe
+0

Stavo cercando di trovare il riferimento. Grazie. –

+0

Se la domanda è "Quale sarà l'output della stringa seguente ...", la risposta corretta sarebbe 3 - perché il codice CSS non funzionerà :) –

Problemi correlati