Текст положения по изображению

У меня есть это изображение:

enter image description here

Но я хочу поместить текст в середине как это:

This is how i wanted.

Как я могу достигнуть этого?

Я хотел бы сделать это в HTML, таким образом, я буду использовать a <div> или a <span>

14
задан misterManSam 27 July 2015 в 02:06
поделиться

4 ответа

Измените его с помощью ulimit bash builtin, или setrlimit (), или при входе в систему с PAM (pam_limits.so).

Это настраиваемый ограничение ресурсов пользователя; см. RLIMIT_STACK в setrlimit (2).

http://bytes.com/topic/c/answers/221976-enlarge-stack-size-gcc

-121--1175996-

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

originalState = GetState();
SetState(newState);
DoSomething();
SetState(originalState);

против

originalState = GetState();
SetState(newState);
try
{
    DoSomething();
}
finally
{
    SetState(originalState);
}

Многие люди скажут вам, что последнее «безопаснее».

Это не обязательно так.

Разница между ними, конечно, последний восстанавливает состояние, даже если DoSomething () бросает исключение. Лучше ли , чем поддерживать состояние мутированным в сценарии исключения? Чем это лучше? Имеется неожиданное необработанное исключение, сообщающее о том, что произошло ужасное и неожиданное . Ваше внутреннее состояние может быть совершенно непоследовательным и произвольно запутанным; никто не знает, что могло произойти в момент исключения. Все, что мы знаем, это то, что DoSomething, вероятно, пытался что-то сделать с мутировавшим состоянием.

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

Иногда это будет правильным делом, а иногда - ухудшением ситуации. Какой сценарий вы на самом деле в зависит от того, что именно код делает, поэтому тщательно подумайте о том, что правильно сделать, прежде чем просто слепо выбрать то, то другое.

Честно говоря, я бы предпочел решить проблему, не попав в первую очередь в ситуацию. Наш существующий проектировать компилятора использует этот образец, и, честно говоря, он раздражает. В существующем компиляторе C # механизм сообщения об ошибках «side effecting». То есть, когда часть компилятора получает ошибку, она вызывает механизм сообщения об ошибке, который затем отображает ошибку пользователю.

Это серьезная проблема для лямбда-связывания. Если у вас есть:

void M(Func<int, int> f) {}
void M(Func<string, int> f) {}
...
M(x=>x.Length);

тот путь это работает мы пытаемся связать

M((int x)=>{return x.Length;});

и

M((string x)=>{return x.Length;});

и мы видим, какая из них, если есть, дает нам ошибку. В этом случае первый даёт ошибку, второй компилирует без ошибки, поэтому это легальное преобразование лямбда и разрешение перегрузки успешно. Что делать с ошибкой? Мы не можем сообщить об этом пользователю, так как эта программа свободна от ошибок!

Поэтому то, что мы делаем, когда связываем тело лямбды, именно то, что вы говорите: мы говорим репортеру об ошибках "не сообщать о своих ошибках пользователю; вместо этого сохраните их в этом буфере ". Затем мы связываем лямбду, восстанавливаем отчет об ошибках в более раннем состоянии и смотрим на содержимое буфера ошибок.

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

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

(И конечно, в нашем случае мы хотим восстановить состояние после исключения. Если что-то внутри компилятора бросается во время лямбда привязки, мы хотим иметь возможность сообщить об этом пользователю! Мы не хотим, чтобы репортер ошибок оставался в состоянии «подавить ошибки отчетов».)

-121--4088530-

Использование псевдоэлементов

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

<h1>Keep Calm and Stack Overflow</h1>

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

h1::before, h1::after {
    content: ""; display: block; height: 3em;
    background: url('ribbon.png') center center;
}

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

enter image description here

Использование фонового изображения (оригинальный ответ 2010 года)

Создайте див, соответствующий размерам изображения. Затем поместите текст внутрь. Используйте поля/дополнения текста, чтобы сделать его вертикально центрированным, и установите для выравнивание текста значение «центр» для CSS.

.imgBox  { 
    width: 300px; height: 100px; 
    background-image: url('bg.jpg');
}
.imgText { 
    text-align: center; 
    margin: 0; padding: 25px 0 0 0;
}
<div class="imgBox">
  <p class="imgText">Hello World</p>
</div>
21
ответ дан 1 December 2019 в 12:26
поделиться

Для меня это выглядит как , затем, например, какой-то текст в , а затем второй . Если вы поместите их все в контейнер с text-align: center , все должно быть в порядке.

0
ответ дан 1 December 2019 в 12:26
поделиться

Вы также можете использовать абсолютное позиционирование и z- index:

<img src="yourimagefile.jpg" class="background-image" />
<p class="overlay-text">Your Test</p>

И в файле CSS:

.background-image { z-index: -1; }
.overlay-text { position: absolute; top: ??px; left: ??px; }

Несколько хороших ссылок: http://www.w3schools.com/Css/pr_pos_z-index.asp

2
ответ дан 1 December 2019 в 12:26
поделиться

Создайте div той же ширины и высоты, что и ваше изображение, и установите изображение в качестве фона для div с помощью css. Поместите вертикальное выравнивание по центру и горизонтальное выравнивание по центру на div и добавьте к нему текст.

0
ответ дан 1 December 2019 в 12:26
поделиться