Пока в вопросе изображен элемент , содержащий несколько символов регулярного пробела, который выглядит как надзор, гораздо чаще встречается разметка, где элементы содержат только пробелы в виде отступов и пустых строк, например :
-
-
Некоторые элементы, такие как в приведенном выше примере, а также
, имеют необязательные концевые теги, что может вызвать непреднамеренные побочные эффекты в обработке DOM, а также при наличии inter -элементные пробелы. Например, следующие два элемента
не создают эквивалентные деревья узлов, в частности, первый не приводит к li:empty
:
li:empty::before { content: '(empty)'; font-style: italic; color: #999; }
-
Учитывая, что HTML считает, что межэлементное пустое пространство должно быть прозрачным по дизайну , нецелесообразно хотеть нацеливать такие элементы на CSS без необходимости прибегать к модификации HTML или приложение, генерирующее его (особенно, если вам нужно реализовать и протестировать специальный случай только для этого).
Как уже упоминалось, псевдокласс класса :blank
в селекторах 4 решит эту проблему. К сожалению, он не попал в настоящий стандарт, потому что он не был предложен ранее, или просто не было возможности его реализовать. Даже его название еще не завершено, и неясно, было ли проверено или завершено описанное поведение.
Поскольку это относительно новое предложение для стандарта, нет известных реализаций вне из :-moz-only-whitespace
, для которого MDN имеет этот , чтобы сказать:
Псевдокласс
blockquote>:-moz-only-whitespace
соответствует элементу, у которого нет дочерних узлов вообще или пустой текст узлы или текстовые узлы, в которых есть только белые пробелы. Только когда в элементе есть узлы элементов или текстовые узлы с одним или несколькими символами, элемент больше не соответствует этому псевдоклассу.... который, при ближайшем рассмотрении, похоже, согласуется с описанием спецификации
:blank
, но поскольку он нестандартен и ничего еще не завершено, я бы посоветовал не использовать его в производстве.Поскольку он не реализован нигде, в настоящее время нет эквивалента в любом другом браузере. Тем временем, изменение HTML является единственным вариантом, будь то в источнике или с помощью DOM-манипуляции с использованием скрипта.
Следующий метод получит Вас, запустился быстро на Ubuntu 12.04:
Установка зависимости:
sudo apt-get install php5-common php5-cli php5-fpm
Установка nginx:
sudo apt-get install nginx
Запускают nginx:
sudo service nginx start
Тест, что это работает (должен см., "Добро пожаловать в nginx!")
sudo service nginx stop
В Вашей nginx конфигурации сайта (/etc/nginx/sites-available/default), измените строку в сервере {} раздел
index index.html index.htm
к index index.php index.html index.htm
.
Некомментарий строки в сервере {} раздел, запускающийся с [1 124]
listen
для ipv4 / ipv6 оба.
Прокручивают вниз туда, где это говорит "местоположение ~ .php {" и строки некомментария, таким образом, это похоже на это:
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
sudo service php5-fpm restart
sudo service nginx restart
Ваш веб-корень по умолчанию расположен в/usr/share/nginx/www (на файл конфигурации). (См. root /usr/share/nginx/www;
(Примечание: Для Ubuntu 12.10 или более новый, необходимо будет заменить fastcgi_pass 127.0.0.1:9000;
строка с этим, чтобы заставить его работать: fastcgi_pass unix:/var/run/php5-fpm.sock;
)
РЕДАКТИРОВАНИЕ: , Как указано [1 113] Matt Browne можно быть интересно этим более свежим сообщением:
, Как Установить Linux, Nginx, MySQL, PHP (стек LEMP) в Ubuntu 16.04
, ответ papashou корректен на старой Ubuntu 12.04. Начиная с Ubuntu 12.10 несколько отличается конфигурация. Вот то, что я сделал:
Установка
sudo apt-get install nginx php5-fpm
Включает Некомментарий PHP
, который следующие строки в конфигурационном файле /etc/nginx/sites-available/default
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
Запускают (или перезапуск)
sudo service php5-fpm restart
sudo service nginx restart
Тест nginx
Открытие, которое эта ссылка http://localhost
должна отобразить "Добро пожаловать в nginx!"
Тест php
Создают php файл:
путь назначения является выводом [1 131]
awk -F' |;' '/^[^#]*root/ {print $2}' /etc/nginx/sites-available/default
, например, /usr/share/nginx/www
Запись info.php
файл с:
echo '<?php phpinfo(); ?>' | \
sudo tee /usr/share/nginx/www/info.php
или поскольку острота
echo '<?php phpinfo(); ?>' | \
sudo tee "$(awk -F' |;' '/^[^#]*root/ {print $2}' /etc/nginx/sites-available/default)/info.php"
Открытие http://localhost/info.php
должна отобразить информационную страницу PHP.