/* This Source Code Form is subject to the terms of the Mozilla Public *License,v.2.0.IfacopyoftheMPLwasnotdistributedwiththis
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
//! Generic types for text properties.
usecrate::Zero; use std::fmt::{self, Write}; use style_traits::{CssWriter, ToCss};
/// A generic value that is either a number or `auto`. #[derive(
Animate,
Clone,
ComputeSquaredDistance,
Copy,
Debug,
MallocSizeOf,
Parse,
PartialEq,
SpecifiedValueInfo,
ToAnimatedValue,
ToAnimatedZero,
ToComputedValue,
ToCss,
ToResolvedValue,
ToShmem,
)] #[repr(C, u8)] pubenum NumberOrAuto<N> { /// `auto`
Auto, /// `<number>`
Number(N),
}
/// A generic value for the `hyphenate-limit-chars` property. #[derive(
Animate,
Clone,
ComputeSquaredDistance,
Debug,
MallocSizeOf,
PartialEq,
SpecifiedValueInfo,
ToAnimatedValue,
ToAnimatedZero,
ToComputedValue,
ToResolvedValue,
ToShmem,
)] #[repr(C)] pubstruct GenericHyphenateLimitChars<Integer> { /// Required minimum number of characters in a hyphenated word. pub total_word_length: NumberOrAuto<Integer>, /// Required minumum number of characters before the hyphen. pub pre_hyphen_length: NumberOrAuto<Integer>, /// Required minumum number of characters after the hyphen. pub post_hyphen_length: NumberOrAuto<Integer>,
}
impl<Integer: ToCss + PartialEq> ToCss for GenericHyphenateLimitChars<Integer> { fn to_css<W>(&self, dest: &mut CssWriter<W>) -> fmt::Result where
W: Write,
{ self.total_word_length.to_css(dest)?;
/// Implements type for text-decoration-thickness /// which takes the grammar of auto | from-font | <length> | <percentage> /// /// https://drafts.csswg.org/css-text-decor-4/ #[repr(C, u8)] #[cfg_attr(feature = "servo", derive(Deserialize, Serialize))] #[derive(
Animate,
Clone,
Copy,
ComputeSquaredDistance,
Debug,
Eq,
MallocSizeOf,
Parse,
PartialEq,
SpecifiedValueInfo,
ToAnimatedValue,
ToAnimatedZero,
ToComputedValue,
ToCss,
ToResolvedValue,
ToShmem,
)] #[allow(missing_docs)] pubenum GenericTextDecorationLength<L> {
LengthPercentage(L),
Auto,
FromFont,
}
/// Implements type for text-indent /// which takes the grammar of [<length-percentage>] && hanging? && each-line? /// /// https://drafts.csswg.org/css-text/#propdef-text-indent #[repr(C)] #[derive(
Animate,
Clone,
ComputeSquaredDistance,
Debug,
Eq,
MallocSizeOf,
PartialEq,
SpecifiedValueInfo,
ToAnimatedValue,
ToAnimatedZero,
ToComputedValue,
ToCss,
ToResolvedValue,
ToShmem,
)] pubstruct GenericTextIndent<LengthPercentage> { /// The amount of indent to be applied to the inline-start of the first line. pub length: LengthPercentage, /// Apply indent to non-first lines instead of first. #[animation(constant)] #[css(represents_keyword)] pub hanging: bool, /// Apply to each line after a hard break, not only first in block. #[animation(constant)] #[css(represents_keyword)] pub each_line: bool,
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.