Порядок <h: outputStyleSheet> и <link rel = "stylesheet"> поменялся местами
В моем JSF 2.2 Facelet у меня есть следующий код:
<html ... >
<f:view>
<h:head>
<h:outputStylesheet name="bootstrap-lib/css/bootstrap.css" />
<h:outputStylesheet library="jquery-ui" name="css/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="url.to.css" />
...
</h:head>
...
</f:view>
</html>
Это выводит однако:
<html ...>
<head>
...
<link rel="stylesheet" type="text/css" href="url.to.css" />
<link type="text/css" rel="stylesheet" href=".../javax.faces.resource/bootstrap-lib/css/bootstrap.css.xhtml?con=bootstrap" />
<link type="text/css" rel="stylesheet" href=".../javax.faces.resource/css/jquery-ui.css.xhtml?ln=jquery-ui&con=bootstrap" />
...
</head>
...
</html>
Сортировка таблиц стилей, определенных в link и outputStylesheet, игнорируется, а таблицы стилей outputStyleSheet всегда располагаются в последнюю очередь.
Мне нужна таблица стилей "url.to.css", определенная с тегом 'link' как последним в списке, поэтому она будет доминирующей. Как я могу это исправить?
1 ответ
Решение
Исправлено с @import
:
Facelet:
<html ...>
<head>
...
<h:outputStylesheet name="css/all.css" />
...
</head>
...
</html>
all.css
@import url("#{resource['bootstrap-lib/css/bootstrap.css']}");
@import url("#{resource['jquery-ui:css/jquery-ui.css']}");
@import url("url.to.css");