Что означают два двоеточия в PHP? Синтаксис псевдо-элементов:before и:after Двоеточие в сложном предложении.

Вы, наверное, заметили, как часто в своих уроках я использую эти два псевдо-элемента. Почему они мне нравятся? Потому что их так удобно использовать, что даже не надо добавлять дополнительные HTML элементы. Однако данная статья посвящена не преимуществам псевдо-элементов.

Данная статья посвящена тому, чтобы раз и навсегда разъяснить все непонятки, касающиеся синтаксиса псевдо-элементов.

Псевдо-что?

Псевдо-элементы так называются, потому что они не являются настоящими HTML элементами. Например, в HTML нет тегов before и after, однако в CSS вы можете применить стили к элементам:before и:after.

Одно или два двоеточия?

Нет никакой разницы между:before и::before или между:after и::after. Синтаксис с двумя двоеточиями характерен для CSS3.

На http://www.w3.org/TR/css3-selectors/#pseudo-elements есть такой абзац:

Этот знак (::) введен для того, чтобы отличить псевдо-классы от псевдо-элементов. Для совместимости с уже существующими таблицами стилей псевдо-элементы в CSS 1 и 2 также возможно задавать с одним двоеточием (в частности, :first-line, :first-letter, :before и:after).

Резюмируем

IE 7 и более ранние версии не поддерживают перечисленные псевдо-элементы. Но зато IE 8 поддерживает, и это веская (и единственная) причина использовать синтаксис с одним двоеточием.

Важно!

Пожалуйста, не забывайте, что все эти разговоры об одном или двух двоеточиях касаются только псевдо-элементов, а не псевдо-классов.

Как вы пишите?

Пишите в комментариях о том, какой синтаксис используете именно вы, и из каких соображений.

В дополнение к ответам относительно использования PHP двух двоеточий в качестве "оператора разрешения области видимости" :

Кроме того, используется двойное двоеточие:

    Чтобы преобразовать неквалифицированное, квалифицированное или псевдонимное имя класса в его полностью квалифицированную форму, и

    Для вызова метода класса __callStatic.

Чтобы преобразовать имя класса в его полностью определенную форму, добавив ":: class"

Две двоеточия, за которыми следует ключевое слово "class", расположенное после имени класса, обеспечивают полное имя этого класса в виде строки. Т.е., "ClassName:: class" преобразуется в полное имя "ClassName". См. (A) Руководство: классы и объекты: основы , (B) Руководство: классы и объекты: константы классов и (C) Руководство: справочник по языку: константы

Синтаксис ":: class" полезен в пространстве имен для получения полностью определенного имени класса из его неквалифицированной или квалифицированной формы или из псевдонима его имени.

Синтаксис ":: class", по-видимому, работает для разрешения имен интерфейсов, а также имен классов, хотя это, похоже, не документировано источниками, указанными выше.

Внутри класса синтаксис также работает с "self:: class", как упомянуто в RFC ":: class", указанном выше.

Несколько примеров:

fullName(), PHP_EOL; // outputs: MyNamespace\TheirClass

Для вызова "__callStatic"

Две двоеточия могут использоваться для "вызова" статического имени метода, которое класс не объявил. Это вызывает метод класса "__callStatic", если он его объявил. Затем метод __callStatic может "динамически" выбирать, как обрабатывать вызов. В PHP это называется "перегрузкой" с помощью "магического метода" __callStatic .

handleOrder($arguments); } return "I"m sorry, we can"t help you with " . lcfirst($item) . "."; } } namespace OurCompany\Specialists; class Car { public function handleOrder($arguments) { return "May I help you with a $arguments car?"; } } class Truck { public function handleOrder($arguments) { return "May I help you with a $arguments truck?"; } } use OurCompany\Orders\Intake; echo Intake::orderCar("red"), PHP_EOL; // outputs: May I help you with a red car? echo Intake::orderTruck("pickup"), PHP_EOL; // outputs: May I help you with a pickup truck? echo Intake::orderShoes("suede"), PHP_EOL; // outputs: I"m sorry, we can"t help you with shoes.

Итак, двоеточие - это разделительный знак препинания. В отличие от точки, восклицательного и вопросительного знаков и многоточия он не имеет отделительной функции, то есть не отделяет предложения в тексте друг от друга. Двоеточие ставится только внутри предложения, и поэтому указывает на то, что после него высказывание будет продолжено.

Двоеточие можно встретить в простом и сложном предложении. В простом предложении оно разделяет и выделяет части высказывания, в сложном играет и смысловую роль: указывает на смысловые отношения между частями бессоюзного сложного предложения.

Так как же правильно употреблять двоеточие, не совершать ошибок и не путать его с другими? Давайте рассмотрим основные случаи.

Двоеточие в простом предложении

Правило 1. Двоеточие в предложении с однородными членами

Если обобщающее слово стоит перед однородными членами, то после него нужно двоеточие, например: Снег лежал повсюду : на крышах домов, на заборах, на газонах, на машинах.

В этом предложении слово повсюду обобщает ряд однородных обстоятельств. Обобщающее слово расположено перед однородными членами, и поэтому после него стоит двоеточие.

Правило 2. Двоеточие в предложениях с уточняющими словами

При обобщающих словах в предложении могут употребляться уточняющие слова: как например, например, как то, а именно, перед которыми ставится запятая, а после них – двоеточие. Например: Снег лежал повсюду , а именно : на крышах домов, на заборах, на газонах, на машинах.

В этом предложении вместе с обобщающим словом повсюду употреблена уточняющая его конструкция «а именно» , после которой следует ряд однородных членов, поэтому после нее стоит двоеточие.

Правило 3. Двоеточие в конструкциях с прямой речью

Если прямая речь следует после слов автора, то перед ней ставится двоеточие, причем сама прямая речи заключается в кавычки и первое слово прямой речи пишется с прописной буквы: Учитель сказал: «Здравствуйте, дети!». Также если прямая речь разрывает слова автора в тексте, то перед ней ставится двоеточие, например: Сказав: «Здравствуйте, дети!», учитель вошел в класс. После прямой речи при этом необходимо поставить запятую.

Двоеточие в сложном предложении

Правило 4. Между частями бессоюзного сложного предложения (БСП) может ставиться двоеточие в следующих случаях.

  • Вторая часть БСП поясняет то, о чем говорилось в первой (между частями предложения можно вставить «а именно» ), например: В народе есть такая примета: ласточки низко летают к дождю; Катя пишет очень грамотно: никогда не делает ошибок в словах, правильно расставляет знаки препинания. В этих бессоюзных сложных предложениях во второй части дается пояснение того, о чем идет речь в первой. Между частями предложений можно вставить «а именно» : В народе есть такая примета (а именно): ласточки низко над водой летают к дождю. Поэтому в приведенных предложениях ставится двоеточие.

  • Вторая часть БСП раскрывает причину того, о чем говорилось в первой (между частями предложения можно вставить союзы: так как, потому что ), например: Катя пишет очень грамотно: она много читает, учит стихи наизусть, тренирует память; Скоро пойдет дождь: ласточки летают низко над водой. В этих БСП вторая часть обосновывает, указывает на причину того, о чем говорилось в первой. Между частями можно вставить союзы: так как, потому что. Скоро пойдет дождь (потому что): ласточки летают низко над водой. Поэтому в таких предложениях ставится двоеточие.

  • Вторая часть БСП дополняет, раскрывает то, о чем говорилось в первой (такие предложения синонимичны сложноподчиненным предложениям с придаточным изъяснительным, поэтому между частями БСП можно вставить союз что ). Например: Катя знает: читать книги не только интересно, но и очень полезно для учебы; В народе говорят: ласточки низко над водой к дождю летают. В данных БСП во второй части раскрывается смысл того, о чем идет речь в первой. Если части такого предложения соединить союзом что , то получится сложноподчиненное предложение с изъяснительным придаточным: В народе говорят (что,): ласточки низко над водой к дождю летают. В предложениях такого типа ставится двоеточие.

  • В первой части предложения опущены глаголы: и увидел, и услышал, и почувствовал , например: Я поднял голову: луч солнца пробивался сквозь облака, озаряя поляну ярким светом; Он обернулся: эхо торопливых шагов раздавалось совсем близко. Данные предложения также являются синонимичными сложноподчиненным с придаточным изъяснительным, в первой части пропущены глаголы типа: и увидел, и услышал, между частями можно вставить союз что. Я поднял голову (и увидел, что) : луч солнца пробивался сквозь облака, озаряя поляну ярким светом.


Двоеточие vs тире

Главная сложность в употреблении двоеточия заключается в том, что иногда бывает легко перепутать этот знак препинания с другим - тире. В последнее время эти знаки часто употребляются параллельно, то есть в одних и тех же случаях может ставиться как тире, так и двоеточие. Например: И судьи решили: если будет дождь, соревнования отменят; Заметил первый камень, решил - здесь клад, стал ковыряться (Тендряков), Конечно, он изменился (: –) сгорбился, поседел, с морщинками в уголках рта; Вхожу (: ) все тихо; Эти слова при нем не произносите (: ) может обидеться; Всех интересовал только один вопрос (: ) как поскорее выпутаться из создавшегося положения; Это означало одно (: ) нужно расстаться.

Такие варианты считаются равноправными, можно не опасаясь ошибиться употреблять и тире, и двоеточие. Однако нужно помнить, что тире помимо синтаксических функций, выполняет и эмоционально-экспрессивные, то есть указывает на эмоциональность высказывания, подчеркивает его выразительность. Поэтому если предложение не несет таких смыслов, является нейтральным, нужно избегать употребления тире и ставить двоеточие, следуя рассмотренным нами правилам.



Понравилась статья? Поделитесь ей
Наверх